[Bug c++/80991] ICE with __is_trivially_constructible in template
marxin at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed Jun 7 08:07:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80991
Martin Liška <marxin at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2017-06-07
CC| |jason at gcc dot gnu.org,
| |marxin at gcc dot gnu.org
Ever confirmed|0 |1
--- Comment #1 from Martin Liška <marxin at gcc dot gnu.org> ---
ICE started with r215738, before that it was rejected:
pr80991.cpp: In function ‘void foo()’:
pr80991.cpp:3:46: error: expected primary-expression before ‘int’
static_assert(__is_trivially_constructible(int, int), "");
^
pr80991.cpp:3:51: error: expected primary-expression before ‘int’
static_assert(__is_trivially_constructible(int, int), "");
^
pr80991.cpp:3:54: error: there are no arguments to
‘__is_trivially_constructible’ that depend on a template parameter, so a
declaration of ‘__is_trivially_constructible’ must be available [-fpermissive]
static_assert(__is_trivially_constructible(int, int), "");
^
pr80991.cpp:3:54: note: (if you use ‘-fpermissive’, G++ will accept your code,
but allowing the use of an undeclared name is deprecated)
pr80991.cpp: In instantiation of ‘void foo() [with bool <anonymous> = true]’:
pr80991.cpp:8:13: required from here
pr80991.cpp:3:45: error: ‘__is_trivially_constructible’ was not declared in
this scope
static_assert(__is_trivially_constructible(int, int), "");
^
More information about the Gcc-bugs
mailing list