------- Comment #3 from dfranke at gcc dot gnu dot org  2007-07-05 15:09 -------
The patch below fixes the current problem. There are other checks against
attrib->save in check_conflict() which might trigger the same problem. I'll
have a closer later this evening. 

Index: symbol.c
===================================================================
--- symbol.c    (revision 126369)
+++ symbol.c    (working copy)
@@ -630,12 +630,17 @@
       conf2 (target);
       conf2 (dummy);
       conf2 (in_common);
-      conf2 (save);
       conf2 (value);
       conf2 (volatile_);
       conf2 (threadprivate);
       /* TODO: hmm, double check this.  */
       conf2 (value);
+
+      if (attr->save == SAVE_EXPLICIT)
+       {
+         a2 = save;
+         goto conflict;
+       }
       break;

     default:


-- 


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

Reply via email to