mame
mame copied to clipboard
SoftFloat 3 conflicts with ARM NEON SIMD headers
Both SoftFloat 3 and the ARM NEON SIMD headers declare types called float64_t, float32_t, etc. in the global namespace. This causes everything to break if something ends up including headers for both (e.g. getting SoftFloat 3 via the M68000 CPU core and getting NEON some other way).
I encountered this when I was mucking around porting MAME’s RGB utilities to NEON – it makes it impossible to compile misc/gammagic.cpp and namco/namcos22.cpp.
Examples of the failures in 64-bit ARM CI builds:
- macOS: https://github.com/cuavas/mame/actions/runs/18656301124/job/53186156512
- Windows: https://github.com/cuavas/mame/actions/runs/18656301129/job/53186156633