https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70790
Lewis Baker <lewissbaker.opensource at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |lewissbaker.opensource@gmai | |l.com --- Comment #2 from Lewis Baker <lewissbaker.opensource at gmail dot com> --- The relevant code seems to live in gcc/cp/mangle.c (at least for IA64 mangling) Does it just need something like the following inserted into the write_expression() function? ``` else if (TREE_CODE (expr) == NOEXCEPT_EXPR) { write_string ("nx"); write_expression (TREE_OPERAND (expr, 0)); } ``` The "nx" prefix seems to be what LLVM uses for its Itanium mangling. See https://github.com/llvm/llvm-project/blob/13a1504ffb9a9a4f82dc1b60d9e8cbb173c7d030/clang/lib/AST/ItaniumMangle.cpp#L4057 Also see example showing this under clang (working) and gcc (failing): https://godbolt.org/z/yHrZDm