The project does not compile due to multiple errors.
File src/ramulator/StatType.h is missing #include <stdint.h> or at least #include <cstdint> to use the types uint3264_t et al. (The difference between both headers is that the last one, per the standard, includes the names under the namespace std::, which is not used in the codebase for these names.)
The project compiles with -Werror, specified in src/CmakeLists.txt and taken as a flag from the PIN3.5 dependency and in newer versions of GCC the project has some warnings, like the following.
../pin_lib/decoder.cc: In function ‘void pin_decoder_print_unknown_opcodes()’:
../pin_lib/decoder.cc:140:18: error: loop variable ‘opcode’ creates a copy from type ‘const std::basic_string<char, std::char_traits<char>, std::allocator<char> >’ [-Werror=range-loop-construct]
140 | for(const auto opcode : unknown_opcodes) {
| ^~~~~~
../pin_lib/decoder.cc:140:18: note: use reference type to prevent copying
140 | for(const auto opcode : unknown_opcodes) {
| ^~~~~~
| &
cc1plus: all warnings being treated as errors
There are shared global variable names that are not declared static nor extern, leading to link errors. For example, variable proc_infos is declared in multiple files. It is not clear whether these variables should point to the same memory (and be change to extern) or not (static).
Describe the bug
The project does not compile due to multiple errors.
src/ramulator/StatType.h
is missing#include <stdint.h>
or at least#include <cstdint>
to use the typesuint3264_t
et al. (The difference between both headers is that the last one, per the standard, includes the names under the namespacestd::
, which is not used in the codebase for these names.)-Werror
, specified insrc/CmakeLists.txt
and taken as a flag from the PIN3.5 dependency and in newer versions of GCC the project has some warnings, like the following.static
norextern
, leading to link errors. For example, variableproc_infos
is declared in multiple files. It is not clear whether these variables should point to the same memory (and be change toextern
) or not (static
).To Reproduce
I'm compiling with the following software: