I have a header only library that relies on heavy template metaprogramming. In Debug it may provide an object file of an enormous size, that is optimized out in Release mode. I don't want to force the users of my library to take care of this problem manually, thus I need to force optimization for parts of code within my header.
But on Windows MinGW seems to not recognize the #pragma GCC optimize ("Os")
.
#ifdef __GNUC__
#pragma GCC push_options
#pragma GCC optimize ("Os")
#endif
Even with these pragmas Debug linking fails with
C:UsersSergeyAppDataLocalTempccgUYGDJ.s: Fatal error: can't close Modules/Devices/EuroFlir410/external/CMakeFiles/test.Euroflir410.conversion.dir/test_conversion.cpp.obj: file too big
Thus it does nothing...
How can I circumvent this problem?
MinGW does not recognize #pragma GCC target
either
question from:
https://stackoverflow.com/questions/65840449/mingw-does-not-recognise-pragma-gcc-optimize 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…