File gpc-fix1.patch of Package gcc3

--- p/predef.c  4 Sep 2007 06:02:58 -0000       1.20
+++ p/predef.c  22 Nov 2007 23:37:32 -0000
@@ -422,7 +422,10 @@
 actual_set_parameters (tree val, int reference)
 {
   tree domain = TYPE_DOMAIN (TREE_TYPE (val)), addr;
-  int addressable = mark_addressable (val);
+  unsigned long save_pascal_dialect = co->pascal_dialect;
+  int addressable = mark_addressable2 (val, 1);
+  co->pascal_dialect = ANY_PASCAL;
+ 
   gcc_assert (addressable);
 
   /* Callers now handle the constant empty set. */
@@ -435,6 +438,7 @@
     addr = build_pascal_unary_op (ADDR_EXPR, val);
   else
     addr = build1 (ADDR_EXPR, build_pointer_type (TREE_TYPE (val)), val);
+  co->pascal_dialect = save_pascal_dialect;
   return tree_cons (NULL_TREE, addr,
     tree_cons (NULL_TREE, convert (pascal_integer_type_node, TYPE_MIN_VALUE (domain)),
       build_tree_list (NULL_TREE, convert (pascal_integer_type_node, TYPE_MAX_VALUE (domain)))));
openSUSE Build Service is sponsored by