[Bug c/51321] __builtin_types_compatible_p (any_type_t[1][], any_other_type_t) crashes GCC

pinskia at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Nov 29 08:14:00 GMT 2011


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51321

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
         AssignedTo|unassigned at gcc dot       |pinskia at gcc dot gnu.org
                   |gnu.org                     |

--- Comment #3 from Andrew Pinski <pinskia at gcc dot gnu.org> 2011-11-29 05:28:24 UTC ---
Semi-obvious patch:
Index: c-parser.c
===================================================================
--- c-parser.c    (revision 181796)
+++ c-parser.c    (working copy)
@@ -6568,9 +6568,16 @@ c_parser_postfix_expression (c_parser *p
                      "expected %<)%>");
       {
         tree e1, e2;
+        e1 = groktypename (t1, NULL, NULL);
+        e2 = groktypename (t2, NULL, NULL);
+        if (e1 == error_mark_node || e2 == error_mark_node)
+          {
+        expr.value = error_mark_node;
+        break;
+          }

-        e1 = TYPE_MAIN_VARIANT (groktypename (t1, NULL, NULL));
-        e2 = TYPE_MAIN_VARIANT (groktypename (t2, NULL, NULL));
+        e1 = TYPE_MAIN_VARIANT (e1);
+        e2 = TYPE_MAIN_VARIANT (e2);

         expr.value
           = comptypes (e1, e2) ? integer_one_node : integer_zero_node;



More information about the Gcc-bugs mailing list