Found the cause, turned out I was using the wrong option, shoulda been using -m32 and -m64 instead of the respective -march options, finally got compile time issues which I can only put down to my usage of -D _WIN32 and -D _WIN64, not sure what to use instead though or whether I'm supposed to define anything there at all, I'll try without.
Edit: Nope, that made it worse, they needed to be defined. Since they're all, if not mostly, related to mingw I'll post the error here 1st to see if anyone familiar with mingw knows what else I need to add to my options to silence this:
Code:
/usr/i686-w64-mingw32/include/_mingw.h:586:14: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘__debugbreak’
And the bit of code in that region (1st instance of __debugbreak is the line that triggers the above):
Code:
#ifdef __MINGW_INTRIN_INLINE
#ifdef __has_builtin
#define __MINGW_DEBUGBREAK_IMPL !__has_builtin(__debugbreak)
#else
#define __MINGW_DEBUGBREAK_IMPL 1
#endif
#if __MINGW_DEBUGBREAK_IMPL == 1
void __cdecl __debugbreak(void);
__MINGW_INTRIN_INLINE void __cdecl __debugbreak(void)
{
#if defined(__i386__) || defined(__x86_64__)
__asm__ __volatile__("int {$}3":);
#elif defined(__arm__)
__asm__ __volatile__("udf #0xfe");
#elif defined(__aarch64__)
__asm__ __volatile__("brk #0xf000");
#else
__asm__ __volatile__("unimplemented");
#endif
}
#endif
#endif
And just in case, the warning options I used:
Code:
WALL?=-Wall -Wextra -pedantic -Werror -Wfatal-errors