NationalSecurityAgency / ghidra

Ghidra is a software reverse engineering (SRE) framework
https://www.nsa.gov/ghidra
Apache License 2.0
51.12k stars 5.82k forks source link

Unable to demangle symbol: can't demangle ARM GCC cross-compiled C++ functions #1569

Closed nsajko closed 4 years ago

nsajko commented 4 years ago

Describe the bug Excerpt of Ghidra errors:

Demangle Symbol> Unable to demangle symbol at 9000120c; name: _ZN8LockViewD1Ev.lto_priv.0.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90001340; name: _ZThn12_N13AppsContainer25storageDidChangeForRecordEN3Ion7Storage6RecordE.  Message: java.lang.ClassCastException
Demangle Symbol> Unable to demangle symbol at 90001c48; name: _ZN12TitleBarViewD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90001c54; name: _ZN18ShiftAlphaLockViewD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90001c60; name: _ZN8LockViewD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90001c6c; name: _ZN18HighContrastButtonD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90001c78; name: _ZN18EmptyBatteryWindowD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90001c84; name: _ZN11BatteryViewD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90001c90; name: _ZN10AppsWindowD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90001e2c; name: _ZThn12_N13AppsContainer13storageIsFullEv.  Message: java.lang.ClassCastException
Demangle Symbol> Unable to demangle symbol at 90001e46; name: _ZThn8_N13AppsContainer32examDeactivatingPopUpIsDismissedEv.  Message: java.lang.ClassCastException
Demangle Symbol> Unable to demangle symbol at 90005e9c; name: _ZN12TitleBarViewD1Ev.lto_priv.0.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90005e9e; name: _ZN18ShiftAlphaLockViewD2Ev.lto_priv.0.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90006204; name: _ZN19ButtonWithSeparatorD1Ev.lto_priv.0.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90006206; name: _ZN18EmptyBatteryWindowD1Ev.lto_priv.0.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90006208; name: _ZN11BatteryViewD1Ev.lto_priv.0.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 9000620a; name: _ZN10AppsWindowD1Ev.lto_priv.0.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90008e60; name: _ZN11MathToolboxC2Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90009b90; name: _ZN20AppsContainerStorageD1Ev.lto_priv.0.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol: _ZZN8Sequence14ListController14editExpressionEiN3Ion6Events5EventEENUlPvS4_E2_4_FUNES4_S4_. Message: Unexpected problem parsing Sequence::ListController::editExpression(int, Ion::Events::Event)::{lambda(void*, void*)#4}::_FUN(void*, void*) from mangled string: _ZZN8Sequence14ListController14editExpressionEiN3Ion6Events5EventEENUlPvS4_E2_4_FUNES4_S4_
Demangle Symbol> Unable to demangle symbol: _ZZN8Sequence14ListController14editExpressionEiN3Ion6Events5EventEENUlPvS4_E4_4_FUNES4_S4_. Message: Unexpected problem parsing Sequence::ListController::editExpression(int, Ion::Events::Event)::{lambda(void*, void*)#6}::_FUN(void*, void*) from mangled string: _ZZN8Sequence14ListController14editExpressionEiN3Ion6Events5EventEENUlPvS4_E4_4_FUNES4_S4_
Demangle Symbol> Unable to demangle symbol: _ZZN8Sequence14ListController14editExpressionEiN3Ion6Events5EventEENUlPvS4_E0_4_FUNES4_S4_. Message: Unexpected problem parsing Sequence::ListController::editExpression(int, Ion::Events::Event)::{lambda(void*, void*)#2}::_FUN(void*, void*) from mangled string: _ZZN8Sequence14ListController14editExpressionEiN3Ion6Events5EventEENUlPvS4_E0_4_FUNES4_S4_
Demangle Symbol> Unable to demangle symbol: _ZZN6Solver13EquationStore17privateExactSolveEPN8Poincare7ContextEbENUlPKcS3_E_4_FUNES5_S3_. Message: Unexpected problem parsing Solver::EquationStore::privateExactSolve(Poincare::Context*, bool)::{lambda(char const*, Poincare::Context*)#1}::_FUN(char const*, Poincare::Context*) from mangled string: _ZZN6Solver13EquationStore17privateExactSolveEPN8Poincare7ContextEbENUlPKcS3_E_4_FUNES5_S3_
Demangle Symbol> Unable to demangle symbol: _ZZN6Solver26layoutRepresentsAnEqualityEN8Poincare6LayoutEENUlS1_E_4_FUNES1_. Message: Unexpected problem parsing Solver::layoutRepresentsAnEquality(Poincare::Layout)::{lambda(Poincare::Layout)#1}::_FUN(Poincare::Layout) from mangled string: _ZZN6Solver26layoutRepresentsAnEqualityEN8Poincare6LayoutEENUlS1_E_4_FUNES1_
Demangle Symbol> Unable to demangle symbol at 90013be0; name: _ZN8Sequence8SequenceC1EN3Ion7Storage6RecordE.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol: _ZZN11Probability12Distribution43cumulativeDistributiveInverseForProbabilityEPdENUldPN8Poincare7ContextENS2_11Preferences13ComplexFormatENS5_9AngleUnitEPKvS9_S9_E_4_FUNEdS4_S6_S7_S9_S9_S9_. Message: Unexpected problem parsing Probability::Distribution::cumulativeDistributiveInverseForProbability(double*)::{lambda(double, Poincare::Context*, Poincare::Preferences::ComplexFormat, Poincare::Preferences::AngleUnit, void const*, void const*, void const*)#1}::_FUN(double, Poincare::Context*, Poincare::Preferences::ComplexFormat, Poincare::Preferences::AngleUnit, void const*, void const*, void const*) from mangled string: _ZZN11Probability12Distribution43cumulativeDistributiveInverseForProbabilityEPdENUldPN8Poincare7ContextENS2_11Preferences13ComplexFormatENS5_9AngleUnitEPKvS9_S9_E_4_FUNEdS4_S6_S7_S9_S9_S9_
Demangle Symbol> Unable to demangle symbol: _ZZNK5Graph9GraphView8drawRectEP9KDContext6KDRectENUlfPvS4_E0_4_FUNEfS4_S4_. Message: Unexpected problem parsing Graph::GraphView::drawRect(KDContext*, KDRect) const::{lambda(float, void*, void*)#2}::_FUN(float, void*, void*) from mangled string: _ZZNK5Graph9GraphView8drawRectEP9KDContext6KDRectENUlfPvS4_E0_4_FUNEfS4_S4_
Demangle Symbol> Unable to demangle symbol: _ZZNK5Graph9GraphView8drawRectEP9KDContext6KDRectENUlfPvS4_E_4_FUNEfS4_S4_. Message: Unexpected problem parsing Graph::GraphView::drawRect(KDContext*, KDRect) const::{lambda(float, void*, void*)#1}::_FUN(float, void*, void*) from mangled string: _ZZNK5Graph9GraphView8drawRectEP9KDContext6KDRectENUlfPvS4_E_4_FUNEfS4_S4_
Demangle Symbol> Unable to demangle symbol: _ZZNK11Calculation16ComplexGraphView8drawRectEP9KDContext6KDRectENUlfPvS4_E_4_FUNEfS4_S4_. Message: Unexpected problem parsing Calculation::ComplexGraphView::drawRect(KDContext*, KDRect) const::{lambda(float, void*, void*)#1}::_FUN(float, void*, void*) from mangled string: _ZZNK11Calculation16ComplexGraphView8drawRectEP9KDContext6KDRectENUlfPvS4_E_4_FUNEfS4_S4_
Demangle Symbol> Unable to demangle symbol at 90032d84; name: _ZN11MessageViewD2Ev.lto_priv.0.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90036148; name: _ZN33AlternateEmptyViewDefaultDelegateC2Ev.lto_priv.0.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 9003844c; name: _ZN19ButtonWithSeparatorD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare9Tokenizer9popDigitsEvENUl9CodePointS1_E_4_FUNES1_S1_. Message: Unexpected problem parsing Poincare::Tokenizer::popDigits()::{lambda(CodePoint, CodePoint)#1}::_FUN(CodePoint, CodePoint) from mangled string: _ZZN8Poincare9Tokenizer9popDigitsEvENUl9CodePointS1_E_4_FUNES1_S1_
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare9Tokenizer15popBinaryDigitsEvENUl9CodePointS1_E_4_FUNES1_S1_. Message: Unexpected problem parsing Poincare::Tokenizer::popBinaryDigits()::{lambda(CodePoint, CodePoint)#1}::_FUN(CodePoint, CodePoint) from mangled string: _ZZN8Poincare9Tokenizer15popBinaryDigitsEvENUl9CodePointS1_E_4_FUNES1_S1_
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare9Tokenizer20popHexadecimalDigitsEvENUl9CodePointS1_E_4_FUNES1_S1_. Message: Unexpected problem parsing Poincare::Tokenizer::popHexadecimalDigits()::{lambda(CodePoint, CodePoint)#1}::_FUN(CodePoint, CodePoint) from mangled string: _ZZN8Poincare9Tokenizer20popHexadecimalDigitsEvENUl9CodePointS1_E_4_FUNES1_S1_
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare9Tokenizer15canPopCodePointE9CodePointENUlS1_S1_E_4_FUNES1_S1_. Message: Unexpected problem parsing Poincare::Tokenizer::canPopCodePoint(CodePoint)::{lambda(CodePoint, CodePoint)#1}::_FUN(CodePoint, CodePoint) from mangled string: _ZZN8Poincare9Tokenizer15canPopCodePointE9CodePointENUlS1_S1_E_4_FUNES1_S1_
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare9Tokenizer13popIdentifierE9CodePointENUlS1_S1_E_4_FUNES1_S1_. Message: Unexpected problem parsing Poincare::Tokenizer::popIdentifier(CodePoint)::{lambda(CodePoint, CodePoint)#1}::_FUN(CodePoint, CodePoint) from mangled string: _ZZN8Poincare9Tokenizer13popIdentifierE9CodePointENUlS1_S1_E_4_FUNES1_S1_
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare6Symbol29deepReplaceReplaceableSymbolsEPNS_7ContextEPbbENUlNS_10ExpressionEPKvE_4_FUNES4_S6_. Message: Unexpected problem parsing Poincare::Symbol::deepReplaceReplaceableSymbols(Poincare::Context*, bool*, bool)::{lambda(Poincare::Expression, void const*)#1}::_FUN(Poincare::Expression, void const*) from mangled string: _ZZN8Poincare6Symbol29deepReplaceReplaceableSymbolsEPNS_7ContextEPbbENUlNS_10ExpressionEPKvE_4_FUNES4_S6_
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare6Number14MultiplicationERKS0_S2_ENUlddE_4_FUNEdd.lto_priv.0. Message: Unexpected problem parsing Poincare::Number::Multiplication(Poincare::Number const&, Poincare::Number const&)::{lambda(double, double)#1}::_FUN(double, double) [clone .lto_priv.0] from mangled string: _ZZN8Poincare6Number14MultiplicationERKS0_S2_ENUlddE_4_FUNEdd.lto_priv.0
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare6Number8AdditionERKS0_S2_ENUlddE_4_FUNEdd.lto_priv.0. Message: Unexpected problem parsing Poincare::Number::Addition(Poincare::Number const&, Poincare::Number const&)::{lambda(double, double)#1}::_FUN(double, double) [clone .lto_priv.0] from mangled string: _ZZN8Poincare6Number8AdditionERKS0_S2_ENUlddE_4_FUNEdd.lto_priv.0
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare14Multiplication17addMissingFactorsENS_10ExpressionENS_14ExpressionNode16ReductionContextEENUlPKS2_S5_bE_4_FUNES5_S5_b. Message: Unexpected problem parsing Poincare::Multiplication::addMissingFactors(Poincare::Expression, Poincare::ExpressionNode::ReductionContext)::{lambda(Poincare::ExpressionNode const*, Poincare::ExpressionNode const*, bool)#1}::_FUN(Poincare::ExpressionNode const*, Poincare::ExpressionNode const*, bool) from mangled string: _ZZN8Poincare14Multiplication17addMissingFactorsENS_10ExpressionENS_14ExpressionNode16ReductionContextEENUlPKS2_S5_bE_4_FUNES5_S5_b
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare14Multiplication20privateShallowReduceENS_14ExpressionNode16ReductionContextEbbENUlPKS1_S4_bE0_4_FUNES4_S4_b.lto_priv.0. Message: Unexpected problem parsing Poincare::Multiplication::privateShallowReduce(Poincare::ExpressionNode::ReductionContext, bool, bool)::{lambda(Poincare::ExpressionNode const*, Poincare::ExpressionNode const*, bool)#2}::_FUN(Poincare::ExpressionNode const*, Poincare::ExpressionNode const*, bool) [clone .lto_priv.0] from mangled string: _ZZN8Poincare14Multiplication20privateShallowReduceENS_14ExpressionNode16ReductionContextEbbENUlPKS1_S4_bE0_4_FUNES4_S4_b.lto_priv.0
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare14Multiplication20privateShallowReduceENS_14ExpressionNode16ReductionContextEbbENUlPKS1_S4_bE_4_FUNES4_S4_b.lto_priv.0. Message: Unexpected problem parsing Poincare::Multiplication::privateShallowReduce(Poincare::ExpressionNode::ReductionContext, bool, bool)::{lambda(Poincare::ExpressionNode const*, Poincare::ExpressionNode const*, bool)#1}::_FUN(Poincare::ExpressionNode const*, Poincare::ExpressionNode const*, bool) [clone .lto_priv.0] from mangled string: _ZZN8Poincare14Multiplication20privateShallowReduceENS_14ExpressionNode16ReductionContextEbbENUlPKS1_S4_bE_4_FUNES4_S4_b.lto_priv.0
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare14Multiplication20privateShallowReduceENS_14ExpressionNode16ReductionContextEbbENUlNS_10ExpressionEPNS_7ContextEE1_4_FUNES3_S5_.lto_priv.0. Message: Unexpected problem parsing Poincare::Multiplication::privateShallowReduce(Poincare::ExpressionNode::ReductionContext, bool, bool)::{lambda(Poincare::Expression, Poincare::Context*)#3}::_FUN(Poincare::Expression, Poincare::Context*) [clone .lto_priv.0] from mangled string: _ZZN8Poincare14Multiplication20privateShallowReduceENS_14ExpressionNode16ReductionContextEbbENUlNS_10ExpressionEPNS_7ContextEE1_4_FUNES3_S5_.lto_priv.0
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare8Function29deepReplaceReplaceableSymbolsEPNS_7ContextEPbbENUlNS_10ExpressionEPKvE_4_FUNES4_S6_. Message: Unexpected problem parsing Poincare::Function::deepReplaceReplaceableSymbols(Poincare::Context*, bool*, bool)::{lambda(Poincare::Expression, void const*)#1}::_FUN(Poincare::Expression, void const*) from mangled string: _ZZN8Poincare8Function29deepReplaceReplaceableSymbolsEPNS_7ContextEPbbENUlNS_10ExpressionEPKvE_4_FUNES4_S6_
Demangle Symbol> Unable to demangle symbol: _ZZNK8Poincare10Expression30nextIntersectionWithExpressionEPKcdddPFddPNS_7ContextENS_11Preferences13ComplexFormatENS5_9AngleUnitEPKvS9_S9_ES4_S6_S7_S0_ENUldS4_S6_S7_S9_S9_S9_E0_4_FUNEdS4_S6_S7_S9_S9_S9_. Message: Unexpected problem parsing Poincare::Expression::nextIntersectionWithExpression(char const*, double, double, double, double (*)(double, Poincare::Context*, Poincare::Preferences::ComplexFormat, Poincare::Preferences::AngleUnit, void const*, void const*, void const*), Poincare::Context*, Poincare::Preferences::ComplexFormat, Poincare::Preferences::AngleUnit, Poincare::Expression) const::{lambda(double, Poincare::Context*, Poincare::Preferences::ComplexFormat, Poincare::Preferences::AngleUnit, void const*, void const*, void const*)#2}::_FUN(double, Poincare::Context*, Poincare::Preferences::ComplexFormat, Poincare::Preferences::AngleUnit, void const*, void const*, void const*) from mangled string: _ZZNK8Poincare10Expression30nextIntersectionWithExpressionEPKcdddPFddPNS_7ContextENS_11Preferences13ComplexFormatENS5_9AngleUnitEPKvS9_S9_ES4_S6_S7_S0_ENUldS4_S6_S7_S9_S9_S9_E0_4_FUNEdS4_S6_S7_S9_S9_S9_
Demangle Symbol> Unable to demangle symbol: _ZZNK8Poincare10Expression30nextIntersectionWithExpressionEPKcdddPFddPNS_7ContextENS_11Preferences13ComplexFormatENS5_9AngleUnitEPKvS9_S9_ES4_S6_S7_S0_ENUldS4_S6_S7_S9_S9_S9_E_4_FUNEdS4_S6_S7_S9_S9_S9_. Message: Unexpected problem parsing Poincare::Expression::nextIntersectionWithExpression(char const*, double, double, double, double (*)(double, Poincare::Context*, Poincare::Preferences::ComplexFormat, Poincare::Preferences::AngleUnit, void const*, void const*, void const*), Poincare::Context*, Poincare::Preferences::ComplexFormat, Poincare::Preferences::AngleUnit, Poincare::Expression) const::{lambda(double, Poincare::Context*, Poincare::Preferences::ComplexFormat, Poincare::Preferences::AngleUnit, void const*, void const*, void const*)#1}::_FUN(double, Poincare::Context*, Poincare::Preferences::ComplexFormat, Poincare::Preferences::AngleUnit, void const*, void const*, void const*) from mangled string: _ZZNK8Poincare10Expression30nextIntersectionWithExpressionEPKcdddPFddPNS_7ContextENS_11Preferences13ComplexFormatENS5_9AngleUnitEPKvS9_S9_ES4_S6_S7_S0_ENUldS4_S6_S7_S9_S9_S9_E_4_FUNEdS4_S6_S7_S9_S9_S9_
Demangle Symbol> Unable to demangle symbol: _ZZN8Poincare8Addition15shallowBeautifyENS_14ExpressionNode16ReductionContextEENUlPKS1_S4_bE_4_FUNES4_S4_b. Message: Unexpected problem parsing Poincare::Addition::shallowBeautify(Poincare::ExpressionNode::ReductionContext)::{lambda(Poincare::ExpressionNode const*, Poincare::ExpressionNode const*, bool)#1}::_FUN(Poincare::ExpressionNode const*, Poincare::ExpressionNode const*, bool) from mangled string: _ZZN8Poincare8Addition15shallowBeautifyENS_14ExpressionNode16ReductionContextEENUlPKS1_S4_bE_4_FUNES4_S4_b
Demangle Symbol> Unable to demangle symbol: _ZZN8TextArea11ContentView20insertTextAtLocationEPKcPcENUliPviiE0_4_FUNEiS4_ii. Message: Unexpected problem parsing TextArea::ContentView::insertTextAtLocation(char const*, char*)::{lambda(int, void*, int, int)#2}::_FUN(int, void*, int, int) from mangled string: _ZZN8TextArea11ContentView20insertTextAtLocationEPKcPcENUliPviiE0_4_FUNEiS4_ii
Demangle Symbol> Unable to demangle symbol: _ZZNK8TextArea23indentationBeforeCursorEvENUliPviiE0_4_FUNEiS0_ii. Message: Unexpected problem parsing TextArea::indentationBeforeCursor() const::{lambda(int, void*, int, int)#2}::_FUN(int, void*, int, int) from mangled string: _ZZNK8TextArea23indentationBeforeCursorEvENUliPviiE0_4_FUNEiS0_ii
Demangle Symbol> Unable to demangle symbol: _ZZNK8TextArea23indentationBeforeCursorEvENUliPviiE_4_FUNEiS0_ii. Message: Unexpected problem parsing TextArea::indentationBeforeCursor() const::{lambda(int, void*, int, int)#1}::_FUN(int, void*, int, int) from mangled string: _ZZNK8TextArea23indentationBeforeCursorEvENUliPviiE_4_FUNEiS0_ii
Demangle Symbol> Unable to demangle symbol at 90085fd0; name: _ZN11TabViewCellD1Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90085fd4; name: _ZN7TabViewD1Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90086216; name: _ZN9StackViewD1Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90086218; name: _ZN14SolidColorViewD1Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 9008645a; name: _ZN4ViewD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90086466; name: _ZN15TransparentViewD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 9008647e; name: _ZN14TextCursorViewD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 900864a8; name: _ZN11TabViewCellD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 900864c6; name: _ZN10SwitchViewD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 900864e4; name: _ZN9StackViewD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 900864f0; name: _ZN14SolidColorViewD0Ev.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 900872b8; name: _ZThn8_N9TextField18setBackgroundColorE7KDColor.  Message: java.lang.ClassCastException
Demangle Symbol> Unable to demangle symbol at 90088164; name: _ZN9ImageViewD1Ev.lto_priv.0.  Message: class ghidra.program.database.data.FunctionDefinitionDB cannot be cast to class ghidra.program.model.data.Structure (ghidra.program.database.data.FunctionDefinitionDB and ghidra.program.model.data.Structure are in unnamed module of loader ghidra.GhidraClassLoader @6842775d)
Demangle Symbol> Unable to demangle symbol at 90088e48; name: _ZThn236_N7Toolbox23willDisplayCellForIndexEP13HighlightCelli.  Message: java.lang.ClassCastException
Demangle Symbol> Unable to demangle symbol at 90089202; name: _ZThn224_N9TextField10setEditingEb.  Message: java.lang.ClassCastException
Demangle Symbol> Unable to demangle symbol at 90089d54; name: _ZThn224_N9TextField12XNTCodePointE9CodePoint.  Message: java.lang.ClassCastException
Demangle Symbol> Unable to demangle symbol at 90089f30; name: _ZThn224_N8TextArea19handleEventWithTextEPKcbb.  Message: java.lang.ClassCastException

To Reproduce Steps to reproduce the behavior:

Expected behavior All symbols compiled with GCC/g++ should be demangled.

Environment (please complete the following information):

nsajko commented 4 years ago

Note that it may be possible to get the same errors after building a "simulator" build for Epsilon, instead of cross compiling: that way it would not be necessary to install ARM's toolchain. But I have not tried yet.

Like this: make PLATFORM=simulator.

astrelsky commented 4 years ago

This is likely reproducible by demangling the mangled symbols in the provided errors. This is a class cast exception. It appears something is attempting to cast a function to a Structure. Providing the application.log may prove helpful.

astrelsky commented 4 years ago

@astrelsky Can you tell me more about that application.log? How do I find it so I could post it here?

Sure. In linux it should be in ~/.ghidra/{ghidra version} on windows it's in the user directory %HOMEPATH%\.ghidra\{ghidra version}

nsajko commented 4 years ago

application.log

For what it is worth: "2020-02-25 12:26:22" seems to be the start of Ghidra's last run.

dragonmacher commented 4 years ago

Many of the failing symbols contain lambda function names, such as: {lambda(char const*, Poincare::Context*)#2}

I am working on updating the parser to handle lambdas. It is not clear if this will fix the ClassCastException you are seeing. Unfortunately, that exception in the log does not contain a line number or stack trace. I will use the samples you have provided above to attempt to reproduce the issue.