Skip to content

armips.cpp doesn't compile on Arch Linux #918

@bunabyt3

Description

@bunabyt3

(Yes, I know this issue is inherited from n64decomp/sm64, but I don't think that repo's maintained anymore)

I'm running Arch Linux with every package on the latest version. I have a MIPS64 toolchain and all of the sm64 dependencies installed. During the "building tools" part of the build, this happens:

Building tools...
armips.cpp:1924:22: error: ‘uint8_t’ has not been declared
 1924 |         bool writeU8(uint8_t data);
      |                      ^~~~~~~
armips.cpp:1606:1: note: ‘uint8_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
 1605 | #include <list>
  +++ |+#include <cstdint>
 1606 | 
armips.cpp:1925:23: error: ‘uint16_t’ has not been declared
 1925 |         bool writeU16(uint16_t data);
      |                       ^~~~~~~~
armips.cpp:1925:23: note: ‘uint16_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:1926:23: error: ‘uint32_t’ has not been declared
 1926 |         bool writeU32(uint32_t data);
      |                       ^~~~~~~~
armips.cpp:1926:23: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:1927:23: error: ‘uint64_t’ has not been declared
 1927 |         bool writeU64(uint64_t data);
      |                       ^~~~~~~~
armips.cpp:1927:23: note: ‘uint64_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:2332:9: error: ‘uint32_t’ does not name a type
 2332 |         uint32_t opcode;
      |         ^~~~~~~~
armips.cpp:2332:9: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:2349:42: error: ‘uint32_t’ has not been declared
 2349 |         RelocationAction(int64_t offset, uint32_t newValue) : offset(offset), newValue(newValue) {}
      |                                          ^~~~~~~~
armips.cpp:2349:42: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:2351:9: error: ‘uint32_t’ does not name a type
 2351 |         uint32_t newValue;
      |         ^~~~~~~~
armips.cpp:2351:9: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp: In constructor ‘RelocationAction::RelocationAction(int64_t, int)’:
armips.cpp:2349:79: error: class ‘RelocationAction’ does not have any field named ‘newValue’
 2349 |         RelocationAction(int64_t offset, uint32_t newValue) : offset(offset), newValue(newValue) {}
      |                                                                               ^~~~~~~~
armips.cpp: In member function ‘void CMipsInstruction::encodeNormal() const’:
armips.cpp:3958:34: error: ‘uint32_t’ was not declared in this scope
 3958 |         g_fileManager->writeU32((uint32_t)encoding);
      |                                  ^~~~~~~~
armips.cpp:3958:34: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp: In member function ‘void CMipsInstruction::encodeVfpu() const’:
armips.cpp:3990:34: error: ‘uint32_t’ was not declared in this scope
 3990 |         g_fileManager->writeU32((uint32_t)encoding);
      |                                  ^~~~~~~~
armips.cpp:3990:34: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp: At global scope:
armips.cpp:4041:33: error: ‘uint32_t’ has not been declared
 4041 |         bool processHi16Entries(uint32_t lo16Opcode, int64_t lo16RelocationBase, std::vector<RelocationAction>& actions, std::vector<std::wstring>& errors);
      |                                 ^~~~~~~~
armips.cpp:4041:33: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:4045:67: error: ‘uint32_t’ has not been declared
 4045 |                 Hi16Entry(int64_t offset, int64_t relocationBase, uint32_t opcode) : offset(offset), relocationBase(relocationBase), opcode(opcode) {}
      |                                                                   ^~~~~~~~
armips.cpp:4045:67: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:4048:17: error: ‘uint32_t’ does not name a type
 4048 |                 uint32_t opcode;
      |                 ^~~~~~~~
armips.cpp:4048:17: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp: In constructor ‘MipsElfRelocator::Hi16Entry::Hi16Entry(int64_t, int64_t, int)’:
armips.cpp:4045:134: error: class ‘MipsElfRelocator::Hi16Entry’ does not have any field named ‘opcode’
 4045 |                 Hi16Entry(int64_t offset, int64_t relocationBase, uint32_t opcode) : offset(offset), relocationBase(relocationBase), opcode(opcode) {}
      |                                                                                                                                      ^~~~~~
armips.cpp: At global scope:
armips.cpp:4675:6: error: ‘bool MipsElfRelocator::processHi16Entries’ is not a static data member of ‘class MipsElfRelocator’
 4675 | bool MipsElfRelocator::processHi16Entries(uint32_t lo16Opcode, int64_t lo16RelocationBase, std::vector<RelocationAction>& actions, std::vector<std::wstring>& errors)
      |      ^~~~~~~~~~~~~~~~
armips.cpp:4675:43: error: ‘uint32_t’ was not declared in this scope
 4675 | bool MipsElfRelocator::processHi16Entries(uint32_t lo16Opcode, int64_t lo16RelocationBase, std::vector<RelocationAction>& actions, std::vector<std::wstring>& errors)
      |                                           ^~~~~~~~
armips.cpp:4675:43: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:4675:72: error: expected primary-expression before ‘lo16RelocationBase’
 4675 | bool MipsElfRelocator::processHi16Entries(uint32_t lo16Opcode, int64_t lo16RelocationBase, std::vector<RelocationAction>& actions, std::vector<std::wstring>& errors)
      |                                                                        ^~~~~~~~~~~~~~~~~~
armips.cpp:4675:121: error: expected primary-expression before ‘&’ token
 4675 | bool MipsElfRelocator::processHi16Entries(uint32_t lo16Opcode, int64_t lo16RelocationBase, std::vector<RelocationAction>& actions, std::vector<std::wstring>& errors)
      |                                                                                                                         ^
armips.cpp:4675:123: error: ‘actions’ was not declared in this scope
 4675 | bool MipsElfRelocator::processHi16Entries(uint32_t lo16Opcode, int64_t lo16RelocationBase, std::vector<RelocationAction>& actions, std::vector<std::wstring>& errors)
      |                                                                                                                           ^~~~~~~
armips.cpp:4675:157: error: expected primary-expression before ‘&’ token
 4675 | bool MipsElfRelocator::processHi16Entries(uint32_t lo16Opcode, int64_t lo16RelocationBase, std::vector<RelocationAction>& actions, std::vector<std::wstring>& errors)
      |                                                                                                                                                             ^
armips.cpp:4675:159: error: ‘errors’ was not declared in this scope; did you mean ‘perror’?
 4675 | bool MipsElfRelocator::processHi16Entries(uint32_t lo16Opcode, int64_t lo16RelocationBase, std::vector<RelocationAction>& actions, std::vector<std::wstring>& errors)
      |                                                                                                                                                               ^~~~~~
      |                                                                                                                                                               perror
armips.cpp:4675:165: error: expression list treated as compound expression in initializer [-fpermissive]
 4675 | bool MipsElfRelocator::processHi16Entries(uint32_t lo16Opcode, int64_t lo16RelocationBase, std::vector<RelocationAction>& actions, std::vector<std::wstring>& errors)
      |                                                                                                                                                                     ^
armips.cpp: In member function ‘virtual bool MipsElfRelocator::relocateOpcode(int, const RelocationData&, std::vector<RelocationAction>&, std::vector<std::__cxx11::basic_string<wchar_t> >&)’:
armips.cpp:4700:32: error: ‘const struct RelocationData’ has no member named ‘opcode’
 4700 |         unsigned int op = data.opcode;
      |                                ^~~~~~
armips.cpp:4712:87: error: ‘const struct RelocationData’ has no member named ‘opcode’
 4712 |                 hi16Entries.emplace_back(data.opcodeOffset, data.relocationBase, data.opcode);
      |                                                                                       ^~~~~~
armips.cpp: In member function ‘bool MipsParser::parseVcstParameter(Parser&, int&)’:
armips.cpp:7464:35: error: ‘INT64_C’ was not declared in this scope
 7464 |                         {L"sqrt", INT64_C(2)}
      |                                   ^~~~~~~
armips.cpp:7464:35: note: the macro ‘INT64_C’ had not yet been defined
In file included from /usr/lib/gcc/x86_64-pc-linux-gnu/15.2.1/include/stdint.h:11,
                 from /usr/include/c++/15.2.1/cstdint:47,
                 from /usr/include/c++/15.2.1/ratio:42,
                 from /usr/include/c++/15.2.1/bits/chrono.h:39,
                 from /usr/include/c++/15.2.1/bits/this_thread_sleep.h:38,
                 from /usr/include/c++/15.2.1/thread:48,
                 from armips.cpp:16926:
/usr/include/stdint.h:241:11: note: it was later defined here
  241 | #  define INT64_C(c)    c ## L
      |           ^~~~~~~
armips.cpp:7462:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7462 |                 sequenceParser.addEntry(2,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~
 7463 |                         {TokenType::Identifier, TokenType::LParen, TokenType::Integer, TokenType::RParen},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7464 |                         {L"sqrt", INT64_C(2)}
      |                         ~~~~~~~~~~~~~~~~~~~~~
 7465 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7467:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7467 |                 sequenceParser.addEntry(3,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~
 7468 |                         {TokenType::Identifier, TokenType::LParen, TokenType::Integer, TokenType::Div, TokenType::Integer, TokenType::RParen},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7469 |                         {L"sqrt", INT64_C(1), INT64_C(2)}
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7470 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7477:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7477 |                 sequenceParser.addEntry(4,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~
 7478 |                         {TokenType::Integer, TokenType::Div, TokenType::Identifier, TokenType::LParen, TokenType::Identifier, TokenType::RParen},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7479 |                         {INT64_C(2), L"sqrt", L"pi"}
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7480 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7482:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7482 |                 sequenceParser.addEntry(5,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~
 7483 |                         {TokenType::Integer, TokenType::Div, TokenType::Identifier},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7484 |                         {INT64_C(2), L"pi"}
      |                         ~~~~~~~~~~~~~~~~~~~
 7485 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7487:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7487 |                 sequenceParser.addEntry(6,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~
 7488 |                         {TokenType::Integer, TokenType::Div, TokenType::Identifier},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7489 |                         {INT64_C(1), L"pi"}
      |                         ~~~~~~~~~~~~~~~~~~~
 7490 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7492:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7492 |                 sequenceParser.addEntry(7,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~
 7493 |                         {TokenType::Identifier, TokenType::Div, TokenType::Integer},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7494 |                         {L"pi", INT64_C(4)}
      |                         ~~~~~~~~~~~~~~~~~~~
 7495 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7497:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7497 |                 sequenceParser.addEntry(8,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~
 7498 |                         {TokenType::Identifier, TokenType::Div, TokenType::Integer},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7499 |                         {L"pi", INT64_C(2)}
      |                         ~~~~~~~~~~~~~~~~~~~
 7500 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7502:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7502 |                 sequenceParser.addEntry(16,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~
 7503 |                         {TokenType::Identifier, TokenType::Div, TokenType::Integer},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7504 |                         {L"pi", INT64_C(6)}
      |                         ~~~~~~~~~~~~~~~~~~~
 7505 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7527:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7527 |                 sequenceParser.addEntry(13,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~
 7528 |                         {TokenType::Identifier, TokenType::LParen, TokenType::Integer, TokenType::RParen},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7529 |                         {L"ln", INT64_C(2)}
      |                         ~~~~~~~~~~~~~~~~~~~
 7530 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7532:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7532 |                 sequenceParser.addEntry(14,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~
 7533 |                         {TokenType::Identifier, TokenType::LParen, TokenType::Integer, TokenType::RParen},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7534 |                         {L"ln", INT64_C(10)}
      |                         ~~~~~~~~~~~~~~~~~~~~
 7535 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7537:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7537 |                 sequenceParser.addEntry(15,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~
 7538 |                         {TokenType::Integer, TokenType::Mult, TokenType::Identifier},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7539 |                         {INT64_C(2), L"pi"}
      |                         ~~~~~~~~~~~~~~~~~~~
 7540 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7542:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7542 |                 sequenceParser.addEntry(17,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~
 7543 |                         {TokenType::Identifier, TokenType::LParen, TokenType::Integer, TokenType::RParen},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7544 |                         {L"log10", INT64_C(2)}
      |                         ~~~~~~~~~~~~~~~~~~~~~~
 7545 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7547:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7547 |                 sequenceParser.addEntry(18,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~
 7548 |                         {TokenType::Identifier, TokenType::LParen, TokenType::Integer, TokenType::RParen},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7549 |                         {L"log2", INT64_C(10)}
      |                         ~~~~~~~~~~~~~~~~~~~~~~
 7550 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7552:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7552 |                 sequenceParser.addEntry(19,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~
 7553 |                         {TokenType::Identifier, TokenType::LParen, TokenType::Integer, TokenType::RParen, TokenType::Div, TokenType::Integer},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7554 |                         {L"sqrt", INT64_C(3), INT64_C(2)}
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7555 |                 );
      |                 ~                       
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp: In member function ‘bool MipsParser::parseVpfxsParameter(Parser&, int&)’:
armips.cpp:7700:67: error: ‘INT64_C’ was not declared in this scope
 7700 |                 sequenceParser.addEntry(0, {TokenType::Integer}, {INT64_C(0)} );
      |                                                                   ^~~~~~~
armips.cpp:7700:67: note: the macro ‘INT64_C’ had not yet been defined
/usr/include/stdint.h:241:11: note: it was later defined here
  241 | #  define INT64_C(c)    c ## L
      |           ^~~~~~~
armips.cpp:7700:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7700 |                 sequenceParser.addEntry(0, {TokenType::Integer}, {INT64_C(0)} );
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7702:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7702 |                 sequenceParser.addEntry(1, {TokenType::Integer}, {INT64_C(1)} );
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7704:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7704 |                 sequenceParser.addEntry(2, {TokenType::Integer}, {INT64_C(2)} );
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7706:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7706 |                 sequenceParser.addEntry(3, {TokenType::Integer, TokenType::Div, TokenType::Integer}, {INT64_C(1), INT64_C(2)} );
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7708:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7708 |                 sequenceParser.addEntry(4, {TokenType::Integer}, {INT64_C(3)} );
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7710:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7710 |                 sequenceParser.addEntry(5, {TokenType::Integer, TokenType::Div, TokenType::Integer}, {INT64_C(1), INT64_C(3)} );
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7712:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7712 |                 sequenceParser.addEntry(6, {TokenType::Integer, TokenType::Div, TokenType::Integer}, {INT64_C(1), INT64_C(4)} );
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7714:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7714 |                 sequenceParser.addEntry(7, {TokenType::Integer, TokenType::Div, TokenType::Integer}, {INT64_C(1), INT64_C(6)} );
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp: In member function ‘bool MipsParser::parseVpfxdParameter(Parser&, int&)’:
armips.cpp:7792:26: error: ‘INT64_C’ was not declared in this scope
 7792 |                         {INT64_C(0), INT64_C(1)} );
      |                          ^~~~~~~
armips.cpp:7792:26: note: the macro ‘INT64_C’ had not yet been defined
/usr/include/stdint.h:241:11: note: it was later defined here
  241 | #  define INT64_C(c)    c ## L
      |           ^~~~~~~
armips.cpp:7790:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7790 |                 sequenceParser.addEntry(1,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~
 7791 |                         {TokenType::Integer, TokenType::Minus, TokenType::Integer},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7792 |                         {INT64_C(0), INT64_C(1)} );
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7794:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7794 |                 sequenceParser.addEntry(-1,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~
 7795 |                         {TokenType::Integer, TokenType::Minus, TokenType::NumberString},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7796 |                         {INT64_C(0), L"1m"} );
      |                         ~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7798:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7798 |                 sequenceParser.addEntry(1,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~
 7799 |                         {TokenType::Integer, TokenType::Colon, TokenType::Integer},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7800 |                         {INT64_C(0), INT64_C(1)} );
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7802:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7802 |                 sequenceParser.addEntry(-1,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~
 7803 |                         {TokenType::Integer, TokenType::Colon, TokenType::NumberString},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7804 |                         {INT64_C(0), L"1m"} );
      |                         ~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7806:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7806 |                 sequenceParser.addEntry(3,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~
 7807 |                         {TokenType::Minus, TokenType::Integer, TokenType::Minus, TokenType::Integer},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7808 |                         {INT64_C(1), INT64_C(1)} );
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7810:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7810 |                 sequenceParser.addEntry(-3,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~
 7811 |                         {TokenType::Minus, TokenType::Integer, TokenType::Minus, TokenType::NumberString},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7812 |                         {INT64_C(1), L"1m"} );
      |                         ~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7814:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7814 |                 sequenceParser.addEntry(3,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~
 7815 |                         {TokenType::Minus, TokenType::Integer, TokenType::Colon, TokenType::Integer},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7816 |                         {INT64_C(1), INT64_C(1)} );
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp:7818:40: error: cannot convert ‘<brace-enclosed initializer list>’ to ‘TokenValueSequence’ {aka ‘std::initializer_list<TokenSequenceValue>’}
 7818 |                 sequenceParser.addEntry(-3,
      |                 ~~~~~~~~~~~~~~~~~~~~~~~^~~~
 7819 |                         {TokenType::Minus, TokenType::Integer, TokenType::Colon, TokenType::NumberString},
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 7820 |                         {INT64_C(1), L"1m"} );
      |                         ~~~~~~~~~~~~~~~~~~~~~
armips.cpp:4654:76: note: initializing argument 3 of ‘void TokenSequenceParser::addEntry(int, TokenSequence, TokenValueSequence)’
 4654 |         void addEntry(int result, TokenSequence tokens, TokenValueSequence values);
      |                                                         ~~~~~~~~~~~~~~~~~~~^~~~~~
armips.cpp: In member function ‘bool PsxRelocator::relocateFile(PsxRelocatorFile&, int&)’:
armips.cpp:9005:33: error: ‘struct RelocationData’ has no member named ‘opcode’
 9005 |                         relData.opcode = sectionData.getDoubleWord(pos);
      |                                 ^~~~~~
armips.cpp:9060:77: error: ‘const struct RelocationAction’ has no member named ‘newValue’
 9060 |                         sectionData.replaceDoubleWord(action.offset, action.newValue);
      |                                                                             ^~~~~~~~
armips.cpp: In member function ‘virtual void CDirectiveData::Encode() const’:
armips.cpp:10092:49: error: ‘uint8_t’ was not declared in this scope
10092 |                         g_fileManager->writeU8((uint8_t)value);
      |                                                 ^~~~~~~
armips.cpp:10092:49: note: ‘uint8_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:10098:50: error: ‘uint16_t’ was not declared in this scope
10098 |                         g_fileManager->writeU16((uint16_t)value);
      |                                                  ^~~~~~~~
armips.cpp:10098:50: note: ‘uint16_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:10105:50: error: ‘uint32_t’ was not declared in this scope
10105 |                         g_fileManager->writeU32((uint32_t)value);
      |                                                  ^~~~~~~~
armips.cpp:10105:50: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:10112:50: error: ‘uint64_t’ was not declared in this scope
10112 |                         g_fileManager->writeU64((uint64_t)value);
      |                                                  ^~~~~~~~
armips.cpp:10112:50: note: ‘uint64_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp: In member function ‘virtual void CDirectiveData::writeTempData(TempData&) const’:
armips.cpp:10135:60: error: ‘uint8_t’ was not declared in this scope
10135 |                         str += swprintf(str,20,L"0x%02X,",(uint8_t)customData[i]);
      |                                                            ^~~~~~~
armips.cpp:10135:60: note: ‘uint8_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:10144:60: error: ‘uint8_t’ was not declared in this scope
10144 |                         str += swprintf(str,20,L"0x%02X,",(uint8_t)normalData[i]);
      |                                                            ^~~~~~~
armips.cpp:10144:60: note: ‘uint8_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:10152:60: error: ‘uint16_t’ was not declared in this scope
10152 |                         str += swprintf(str,20,L"0x%04X,",(uint16_t)normalData[i]);
      |                                                            ^~~~~~~~
armips.cpp:10152:60: note: ‘uint16_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:10161:60: error: ‘uint32_t’ was not declared in this scope
10161 |                         str += swprintf(str,20,L"0x%08X,",(uint32_t)normalData[i]);
      |                                                            ^~~~~~~~
armips.cpp:10161:60: note: ‘uint32_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp:10170:62: error: ‘uint64_t’ was not declared in this scope
10170 |                         str += swprintf(str,20,L"0x%16llX,",(uint64_t)normalData[i]);
      |                                                              ^~~~~~~~
armips.cpp:10170:62: note: ‘uint64_t’ is defined in header ‘<cstdint>’; this is probably fixable by adding ‘#include <cstdint>’
armips.cpp: In function ‘std::unique_ptr<CAssemblerCommand> parseDirectiveAlignFill(Parser&, int)’:
armips.cpp:10984:59: error: ‘UINT64_C’ was not declared in this scope
10984 |                 return ::make_unique<CDirectiveAlignFill>(UINT64_C(4),mode);
      |                                                           ^~~~~~~~
armips.cpp:10984:59: note: the macro ‘UINT64_C’ had not yet been defined
/usr/include/stdint.h:251:11: note: it was later defined here
  251 | #  define UINT64_C(c)   c ## UL
      |           ^~~~~~~~
armips.cpp: In member function ‘bool ElfRelocator::relocateFile(ElfRelocatorFile&, int64_t&)’:
armips.cpp:16772:41: error: ‘struct RelocationData’ has no member named ‘opcode’
16772 |                                 relData.opcode = sectionData.getDoubleWord(pos, elf->getEndianness());
      |                                         ^~~~~~
armips.cpp:16835:110: error: ‘const struct RelocationAction’ has no member named ‘newValue’
16835 |                                 sectionData.replaceDoubleWord(action.offset-relocationOffsets[index], action.newValue, elf->getEndianness());
      |                                                                                                              ^~~~~~~~
armips.cpp: At global scope:
armips.cpp:19115:6: error: no declaration matches ‘bool FileManager::writeU8(uint8_t)’
19115 | bool FileManager::writeU8(uint8_t data)
      |      ^~~~~~~~~~~
armips.cpp:1924:14: note: candidate is: ‘bool FileManager::writeU8(int)’
 1924 |         bool writeU8(uint8_t data);
      |              ^~~~~~~
armips.cpp:1913:7: note: ‘class FileManager’ defined here
 1913 | class FileManager
      |       ^~~~~~~~~~~
armips.cpp:19120:6: error: no declaration matches ‘bool FileManager::writeU16(uint16_t)’
19120 | bool FileManager::writeU16(uint16_t data)
      |      ^~~~~~~~~~~
armips.cpp:1925:14: note: candidate is: ‘bool FileManager::writeU16(int)’
 1925 |         bool writeU16(uint16_t data);
      |              ^~~~~~~~
armips.cpp:1913:7: note: ‘class FileManager’ defined here
 1913 | class FileManager
      |       ^~~~~~~~~~~
armips.cpp:19128:6: error: no declaration matches ‘bool FileManager::writeU32(uint32_t)’
19128 | bool FileManager::writeU32(uint32_t data)
      |      ^~~~~~~~~~~
armips.cpp:1926:14: note: candidate is: ‘bool FileManager::writeU32(int)’
 1926 |         bool writeU32(uint32_t data);
      |              ^~~~~~~~
armips.cpp:1913:7: note: ‘class FileManager’ defined here
 1913 | class FileManager
      |       ^~~~~~~~~~~
armips.cpp:19136:6: error: no declaration matches ‘bool FileManager::writeU64(uint64_t)’
19136 | bool FileManager::writeU64(uint64_t data)
      |      ^~~~~~~~~~~
armips.cpp:1927:14: note: candidate is: ‘bool FileManager::writeU64(int)’
 1927 |         bool writeU64(uint64_t data);
      |              ^~~~~~~~
armips.cpp:1913:7: note: ‘class FileManager’ defined here
 1913 | class FileManager
      |       ^~~~~~~~~~~
make[1]: *** [Makefile:109: armips] Error 1
make[1]: *** Waiting for unfinished jobs....
Makefile:348: *** Failed to build tools.  Stop.

Absolutely no part of armips.cpp will compile without errors on the latest GCC. I have been able to compile this project before with a similar software and hardware configuration, but it seems like the latest Arch packages are simply too new to work with this project. I don't know how to fix this.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions