[Bug c++/80841] Fails to match template specialization with polymorphic non-type template argument

2017-05-22 Thread cipherjason at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80841 --- Comment #4 from Jason Bell --- (In reply to Daniel Krügler from comment #3) > (In reply to Jason Bell from comment #2) > > Thanks that's a good reduced example. I've changed it slightly so it works > > with constexpr input. > > But that is

[Bug c++/80841] Fails to match template specialization with polymorphic non-type template argument

2017-05-22 Thread cipherjason at hotmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80841 --- Comment #2 from Jason Bell --- Thanks that's a good reduced example. I've changed it slightly so it works with constexpr input. //# template struct A {}; template struct B {}; template struct

[Bug c++/80841] New: Fails to match template specialization with polymorphic non-type template argument

2017-05-20 Thread cipherjason at hotmail dot com
Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: cipherjason at hotmail dot com Target Milestone: --- This code fails to match the specialization of MaybeDestruct: #include template struct Just; template class

[Bug c++/80840] New: ICE in convert_nontype_argument reference to double

2017-05-20 Thread cipherjason at hotmail dot com
Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: cipherjason at hotmail dot com Target Milestone: --- The following code causes an internal compiler error: #include template struct Just; template struct Number { static constexpr double value = X; using