> Task :Decompiler:compileSleighLinux_x86_64ExecutableSleighCpp
/tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/float.cc: In member function ???double FloatFormat::getHostFloat(uintb, floatclass*) const???:
/tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/float.cc:245:30: error: ???numeric_limits??? is not a member of ???std???
245 | double infinity = std::numeric_limits<double>::infinity();
| ^~~~~~~~~~~~~~
/tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/float.cc:245:45: error: expected primary-expression before ???double???
245 | double infinity = std::numeric_limits<double>::infinity();
| ^~~~~~
/tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/float.cc:250:23: error: ???numeric_limits??? is not a member of ???std???
250 | double nan = std::numeric_limits<double>::quiet_NaN();
| ^~~~~~~~~~~~~~
/tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/float.cc:250:38: error: expected primary-expression before ???double???
250 | double nan = std::numeric_limits<double>::quiet_NaN();
| ^~~~~~
> Task :Decompiler:compileDecompileLinux_x86_64ExecutableDecompileCpp
/tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/float.cc: In member function ???double FloatFormat::getHostFloat(uintb, floatclass*) const???:
/tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/float.cc:245:30: error: ???numeric_limits??? is not a member of ???std???
245 | double infinity = std::numeric_limits<double>::infinity();
| ^~~~~~~~~~~~~~
/tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/float.cc:245:45: error: expected primary-expression before ???double???
245 | double infinity = std::numeric_limits<double>::infinity();
| ^~~~~~
/tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/float.cc:250:23: error: ???numeric_limits??? is not a member of ???std???
250 | double nan = std::numeric_limits<double>::quiet_NaN();
| ^~~~~~~~~~~~~~
/tmp/ghidra/Ghidra/Features/Decompiler/src/decompile/cpp/float.cc:250:38: error: expected primary-expression before ???double???
250 | double nan = std::numeric_limits<double>::quiet_NaN();
| ^~~~~~
Fixed typo in AddressLabelInfo.
Improved implementation and error handling of AddressLabelInfo.
GP-2606
Refactored the package of 'AddressLabelInfo' to beghidra.program.model.lang. Removed the source and namespace variablesfrom AddressLabelInfo since they would always be global and IMPORTED.Removed a number of constructors to simplify AddressLabelInfo. Improvederror handing in SleighLanguage class.
GP-2606
Added javadocs to and throw exceptions from AddressLabelInfo constructors and removed extra constructors that were no longer needed. Added exception handling to AbsractProgramLoader and SleighLanguage for thrown exceptions. Made some variables in SleighLanguage private and removed an unnecessary null check.
GP-2606
Prepared test to help investigate volatility interplay settings.
GP-2606
Updated per review comments. SleighLanguage will parse pspec files andthen apply symbol element settings for volatility afterward. Simplifiedtests for SleighLanguage and the Decompiler.
GP-2606
Made updates based on review feedback. Address label info holds the endaddress of the label. Sleigh language will resolve symbol mutabilityafter parsing the pspec file such that the order of elements in the filewill not be a factor. Rearranged tests in preparation for improvement.Added a constructor to the ProgramBuilder class so that custom definedpspec files may be used in the tests.
GP-2606
Updated SpecXmlUtils decodeBoolean method to call decodeNullableBooleanfirst, however if the result is null, to return false instead of null.
GP-2606
Changed size of addressLabelInfo to sizeInBytes and added comment toisVolatile that specifies what null, false, or true mean in context.Incorporated improvements per review comments to SleighLanguage.
GP-2606
Added tests for the sleigh language volatility changes and thedecompiler itself.
GP-2606:
Updated SleighLanguage to alter 'volatileAddresses' based on the symbolelements and their attributes in pspec files. Added size and volatilevariables to AddressLabelInfo class. Added Boolean parser method to theSpecXmlUtils.java file.
GP-2606: Added optional volatile boolean and optional size integer attributes to the symbol element of processor specification (pspec) files.