wxASSERT shouldn't be used inside constexpr functions because some of their code paths for it implement trap functions that use inline assembly. This is not allowed by the C++14 standard, and is supposed to be part of C++2a. Other code paths just call into system functions, so this will be highly platform dependent unfortunately. It would be best for compatibility to switch it over to wxLogDebug instead of the assert.
-Ian On Wed, Sep 4, 2019 at 6:36 PM jp charras <[email protected]> wrote: > common.h does not compile with msys2/gcc 9.1.0 > > Here is the error message: > > In file included from D:/wxWidgets-3.1.1/include/wx/defs.h:851, > from D:/wxWidgets-3.1.1/include/wx/wx.h:14, > from E:/kicad-launchpad/gerber_dev/include/common.h:37, > from > E:/kicad-launchpad/gerber_dev/polygon/math_for_graphics.cpp:8: > E:/kicad-launchpad/gerber_dev/include/common.h: In function 'constexpr > ret_type KiROUND(fp_type)': > E:/kicad-launchpad/gerber_dev/include/common.h:118:5: error: 'asm' in > 'constexpr' function > 118 | wxASSERT( ret <= std::numeric_limits<ret_type>::max() > > Looks to me using wxASSERT here creates this issue. > (I replaced wxASSERT by a printf controlled by the same condition to > compile Kicad) > > -- > Jean-Pierre CHARRAS > > _______________________________________________ > Mailing list: https://launchpad.net/~kicad-developers > Post to : [email protected] > Unsubscribe : https://launchpad.net/~kicad-developers > More help : https://help.launchpad.net/ListHelp >
_______________________________________________ Mailing list: https://launchpad.net/~kicad-developers Post to : [email protected] Unsubscribe : https://launchpad.net/~kicad-developers More help : https://help.launchpad.net/ListHelp

