[PATCH]fdo 50488 added calc formula XOR as defined in ODFF1.2

Winfried Donkers W.Donkers at dci-electronics.nl
Fri Jun 8 08:08:38 PDT 2012


Hi Eike,


>Huh? Accidentally hit the delete line key in your editor?
No, I did a git pull -r whilst working on the code and forgot to update this file. Should have seen it, though.


>Using a short here and incrementing it for values!=0 may easily overflow
>if ranges are passed. A better approach would be to use the C++ ^ xor
>operator, e.g.
>  short nRes = 0;
>    nRes ^= (PopDouble() != 0.0);
True, I followed the ODFF definition too literally. repeated XORing is identical and more in line with the code in ScAnd() and ScOr().

>This does not work. Excel doesn't know the XOR function so there is no
>function identifier available. Inventing a value like 355 also does not
>work, the values have to be those that Excel uses. So, ...
>... just leave the function in that section then at least Calc can use
>it if the .xls is reopened.
Here I couldn't check Excel and guessed (wrongly) that Excel would have an XOR function.

>With a few changes I think we'd have a working implementation. Please
>try and test.
I will build and test with the changes you propose and submit a new patch.

>Btw, instead of reusing fdo#50488 for all new implementations I'd prefer
>if we created a new bug once we have a function ready and make fdo#50488
>depend on the new bug to easily get a list of solutions. Otherwise when
>committing a change with fdo#50488 in the commit summary we'd add
>a target to that bug that wouldn't match the real release when a new
>function will be available.
All right. I created bug 50882 for the XOR function and will create other bug for other functions (I hope I entered the dependancy correct).

>Keep up the good work :) I'm looking forward ot the corrrected patch.
I'll do my best :)

Winfried



More information about the LibreOffice mailing list