diff options
author | Eike Rathke <erack@redhat.com> | 2020-10-14 01:50:03 +0200 |
---|---|---|
committer | Eike Rathke <erack@redhat.com> | 2020-10-14 03:52:15 +0200 |
commit | 5d9e33068e756b4e74aa2a5e8d9ed16dabe27f29 (patch) | |
tree | c864a47a75638fd4707dad784c7d5c95955c9143 /include | |
parent | fead31c2c08c08023a237595f69b5da502ad5d18 (diff) |
Derive FormulaExternalToken from FormulaByteToken, tdf#133260 follow-up
This should always have had a ParamClass member variable and
SetInForceArray()/GetInForceArray() functions but never did.
Now with
commit 3a33828b8de7554e497051738c722b1764960a86
CommitDate: Tue Oct 13 21:36:31 2020 +0200
Resolves: tdf#133260 Propagate ForceArrayReturn from inline arrays
it broke CppunitTest_sc_subsequent_filters_test with the virtual
dummy assert() in FormulaToken::SetInForceArray(). Unfortunately
not caught earlier but at least it did now.
Remove the duplicated FormulaToken overrides and simply derive
from FormulaByteToken instead that has all we need.
Change-Id: I7946602955970fb9d6f349efdacb41389e211b68
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104262
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
Diffstat (limited to 'include')
-rw-r--r-- | include/formula/token.hxx | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/include/formula/token.hxx b/include/formula/token.hxx index 02bffd6a0225..4fc6b382d4cd 100644 --- a/include/formula/token.hxx +++ b/include/formula/token.hxx @@ -361,26 +361,22 @@ public: }; -class FORMULA_DLLPUBLIC FormulaExternalToken final : public FormulaToken +class FORMULA_DLLPUBLIC FormulaExternalToken final : public FormulaByteToken { private: - OUString aExternal; - sal_uInt8 nByte; + OUString aExternal; public: FormulaExternalToken( OpCode e, sal_uInt8 n, const OUString& r ) : - FormulaToken( svExternal, e ), aExternal( r ), - nByte( n ) {} + FormulaByteToken( e, n, svExternal, ParamClass::Unknown ), + aExternal( r ) {} FormulaExternalToken( OpCode e, const OUString& r ) : - FormulaToken(svExternal, e ), aExternal( r ), - nByte( 0 ) {} + FormulaByteToken( e, 0, svExternal, ParamClass::Unknown ), + aExternal( r ) {} FormulaExternalToken( const FormulaExternalToken& r ) : - FormulaToken( r ), aExternal( r.aExternal ), - nByte( r.nByte ) {} + FormulaByteToken( r ), aExternal( r.aExternal ) {} virtual FormulaToken* Clone() const override { return new FormulaExternalToken(*this); } - virtual const OUString& GetExternal() const override; - virtual sal_uInt8 GetByte() const override; - virtual void SetByte( sal_uInt8 n ) override; + virtual const OUString& GetExternal() const override; virtual bool operator==( const FormulaToken& rToken ) const override; }; |