shithub: mc

Download patch

ref: 96da004ab004c908e6e137e3e5407a328b0b42b8
parent: 1ac199a3e2c150873279adf3a36f9a8f94e8fd60
author: Ori Bernstein <[email protected]>
date: Fri Oct 11 07:21:04 EDT 2013

Don't double install ucons.

--- a/parse/type.c
+++ b/parse/type.c
@@ -562,6 +562,8 @@
                     return 0;
             break;
         case Tyname:
+            if (!nameeq(a->name, b->name))
+                return 0;
             for (i = 0; i < a->narg; i++)
                 if (!tyeq(a->arg[i], b->arg[i]))
                     return 0;
--- a/parse/use.c
+++ b/parse/use.c
@@ -669,7 +669,7 @@
                         htput(dedup, t->name, t);
                 } else if (t->type == Tyunion)  {
                     for (i = 0; i < t->nmemb; i++)
-                        if (!t->udecls[i]->synth)
+                        if (!getucon(s, t->udecls[i]->name) && !t->udecls[i]->synth)
                             putucon(s, t->udecls[i]);
                 }
                 break;