[Bug c++/102305] intrinsic __is_constrctible is wrong for templated abstract classes
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Sep 13 11:30:20 GMT 2021
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=102305
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org
--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Created attachment 51447
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=51447&action=edit
gcc12-pr102305.patch
Untested fix.
is_xible_helper checks ABSTRACT_CLASS_TYPE_P (to) and returns error_mark_node
if it is true, but when to is yet uninstantiated class template, it is false
and the template is instantiated only later on when trying to make the dummy
object.
With this patch we instantiate it before checking for abstract classes, but
will keep rejecting it or dealing with arrays of unknown bound till the spots
that were checking for that before.
More information about the Gcc-bugs
mailing list