[Bug c++/95985] [11 Regression] ICE: tree check: expected tree_list, have error_mark in common_handle_aligned_attribute, at c-family/c-attribs.c:1980
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Mon Jun 29 19:28:38 GMT 2020
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=95985
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P4
Keywords| |error-recovery
--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
While we could do something like:
--- c-attribs.c.jj 2020-06-10 14:58:17.422495938 +0200
+++ c-attribs.c 2020-06-29 21:25:58.300888506 +0200
@@ -1975,7 +1975,9 @@ common_handle_aligned_attribute (tree *n
yet. */
tree last_decl = node[1] ? node[1] : *node;
- if (args)
+ if (args == error_mark_node)
+ align_expr = args;
+ else if (args)
{
align_expr = TREE_VALUE (args);
if (align_expr && TREE_CODE (align_expr) != IDENTIFIER_NODE
I don't think it scales well, because we have hundreds of *handle_*attribute
functions and all of them assume that args is either NULL or a TREE_LIST and
changing them doesn't look right.
More information about the Gcc-bugs
mailing list