[Bug c++/88203] assert does not compile with OpenMP's pragma omp parallel for default(none)
amonakov at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Nov 26 16:25:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=88203
Alexander Monakov <amonakov at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Keywords| |openmp
CC| |amonakov at gcc dot gnu.org
--- Comment #1 from Alexander Monakov <amonakov at gcc dot gnu.org> ---
It's tricky to use macro-expanded expressions in scope of default(none), you
never know what the expansion is going to reference. This is not limited to the
assert macro (or to its use of __PRETTY_FUNCTION__).
In general I'm afraid use of default(none) needs introducing wrappers for
anything that can be macro-expanded in an unknown way, and relying on inlining
to optimize it back. Unfortunately though, for assert that implies almost
reimplementing it to get file:line info as in original code.
I'm not sure there's a compiler bug here. Just a painful side of default(none).
More information about the Gcc-bugs
mailing list