retdec icon indicating copy to clipboard operation
retdec copied to clipboard

Fix some compilation errors

Open scc-tw opened this issue 2 years ago • 2 comments
trafficstars

Here's a revised version of the pull request description:


This pull request includes the following changes:

  • Refactor: Fix returning stack address in BaseErrors (Commit: 7b28b2063f0a61da84d888292be81e655d477fa6) Explanation: Currently, the error messages in BaseErrors are evaluated on the stack, but they should be constructed on the heap using std::string to avoid memory issues. Even though C++17 enables Link-Time Optimization (LTO) by default, the stack-allocated objects would still be destructed at the next stack frame. This change ensures proper memory management.

  • Fix: Add missing override specifier (Commit: b7676df4520d219cbcadfa045f8f34bd2ef8658d) Explanation: The absence of the override specifier in certain functions can cause compilation errors when using Clang. This fix adds the missing override specifier to address the issue.

  • Fix: Eliminate all warnings in AppleClang (Commit: e51a874768f7c4060ea99126343d122a268afe3a) Explanation: There is an inconsistency with the uint64_t type between Linux x86_64 and Apple Silicon aarch64 platforms. This change resolves the issue by ensuring consistent usage of the uint64_t type across platforms. For more information on the different data models on various platforms, refer to the 64-bit computing data models Wikipedia page.

Please review and merge these changes as they improve the codebase's correctness, maintainability, and portability.

scc-tw avatar Jun 22 '23 20:06 scc-tw

Apologies for the formatting issue caused by the IDE.

To improve the cleanliness of the working tree, I have removed commit 8cd5ae1.

scc-tw avatar Jun 23 '23 02:06 scc-tw

There is another commit 7b28b20 that also has a formatting issue, but it's a bit more complex to revise. If it's not a concern for you, I suggest keeping the changes made in this commit.

scc-tw avatar Jun 23 '23 03:06 scc-tw