| Summary: | Inpredictable behaviour in a more complex lookup and address processing formula | ||
|---|---|---|---|
| Product: | LibreOffice | Reporter: | Thijs <m.p.de.graaff> |
| Component: | Calc | Assignee: | Eike Rathke <erack> |
| Status: | RESOLVED FIXED | ||
| Severity: | major | CC: | raal |
| Priority: | high | Keywords: | regression |
| Version: | 5.1.5.2 release | ||
| Hardware: | All | ||
| OS: | All | ||
| Whiteboard: | target:5.4.0 | ||
| Crash report or crash signature: | Regression By: | ||
| Attachments: |
Test spreadsheet showing the bug
Screenshot showing result |
||
|
Description
Thijs
2017-05-09 12:46:52 UTC
Created attachment 133191 [details]
Test spreadsheet showing the bug
Created attachment 133192 [details]
Screenshot showing result
Already in 5.1.5 at least, don't have earlier versions at hand. Investigating. The problem is that for MATCH (and LOOKUP, HLLOKUP and VLOOKUP) the second parameter forces its argument and sub-arguments to Array if not of type Reference, which happens during compile time, but INDIRECT during runtime returns Reference so should not be treated that way. Here arguments to INDIRECT (namely ADDRESS and ROW and COLUMN) are forced into Array context hence make INDIRECT return different ranges than expected. Eike Rathke committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=8ba4679c96e08eebf58347edfba33bb9610701b5 Move ScParameterClassification::Type to formula::ParamClass, tdf#107724 prep It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. Eike Rathke committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=031bf555256f8f827b4f32124f88c4012d28dcd3 Disambiguate Reference -> uno::Reference (tdf#107724 prep rel) It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. Eike Rathke committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=f39e1b1079b04c8d14d3fa4a00d2cf519dba05a5 Change IsForceArrayParameter() to GetForceArrayParameter(), tdf#107724 prep It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. Eike Rathke committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=47023116d6bf89bb2e0b8b5293272f63db32fbc2 Disambiguate Reference -> uno::Reference (tdf#107724 prep rel) It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. Eike Rathke committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=1cf44947161d8fff6e3edb3f7a1dd01c81963b42 Hold ParamClass at FormulaByteToken instead of bool, tdf#107724 prep It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. Eike Rathke committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=656cf4d2e7c7d193d4d23900a344d6625fc217ac Add ParamClass ScParameterClassification::CommonData::eReturn, tdf#107724 prep It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. Eike Rathke committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=e52beea63ddd7087c61df5838f9643d68486d71e GetParameterType: SAL_MAX_UINT16 for return ParamClass, tdf#107724 prep It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. Eike Rathke committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=3e67f82fcee0ef43ad8fd9f36e0d618c33d4ee72 inherit ReferenceOrForceArray only if nested not Reference, tdf#107724 prep It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. Eike Rathke committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=eae5503d1b3a7f9aace2603d6ce91003ede33974 Resolves: tdf#107724 INDIRECT and OFFSET return ParamClass::Reference It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. Eike Rathke committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=6dc2efcbd68b9cdad9375eee3ad45b4bd2893733 ParamClass::Reference return for range creating OpCodes, tdf#107724 related It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. Eike Rathke committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=c8c8e70be7ec0d47e13724105eccbf4b9ab5a7c6 Add unit test for non-propagation of array context, tdf#107724 It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback. |