summaryrefslogtreecommitdiff
path: root/parse/stab.c
diff options
context:
space:
mode:
authorOri Bernstein <ori@eigenstate.org>2015-09-25 22:49:28 -0700
committerOri Bernstein <ori@eigenstate.org>2015-09-25 22:49:28 -0700
commite1bd55e7d0fd87b66041c1f90cc4cba370cb25ed (patch)
tree94e29e030bf44f722b6aa3a7364b41ec13795ae8 /parse/stab.c
parentf7dc2e6ddef90c552c22663f8cc664a02c6f3d27 (diff)
downloadmc-e1bd55e7d0fd87b66041c1f90cc4cba370cb25ed.tar.gz
Unhide declarations if needed.
We don't want to keep a declaration hidden if we saw an exported declaration of it.
Diffstat (limited to 'parse/stab.c')
-rw-r--r--parse/stab.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/parse/stab.c b/parse/stab.c
index f4c592a..a17efeb 100644
--- a/parse/stab.c
+++ b/parse/stab.c
@@ -228,8 +228,10 @@ static int mergedecl(Node *old, Node *new)
{
Node *e, *g;
- if (old->decl.ishidden || new->decl.ishidden)
+ if (old->decl.ishidden || new->decl.ishidden) {
+ old->decl.ishidden = old->decl.ishidden && new->decl.ishidden;
return 1;
+ }
if (old->decl.vis == Visexport && new->decl.vis != Visexport) {
e = old;
g = new;