Commit 960096eb authored by Robert Bradshaw's avatar Robert Bradshaw

merge

parents 0e85a140 f020a6d2
...@@ -800,6 +800,7 @@ class CStructOrUnionDefNode(StatNode): ...@@ -800,6 +800,7 @@ class CStructOrUnionDefNode(StatNode):
self.entry.defined_in_pxd = 1 self.entry.defined_in_pxd = 1
for attr in self.attributes: for attr in self.attributes:
attr.analyse_declarations(env, scope) attr.analyse_declarations(env, scope)
if self.visibility != 'extern':
for attr in scope.var_entries: for attr in scope.var_entries:
type = attr.type type = attr.type
while type.is_array: while type.is_array:
...@@ -811,7 +812,7 @@ class CStructOrUnionDefNode(StatNode): ...@@ -811,7 +812,7 @@ class CStructOrUnionDefNode(StatNode):
type = type.base_type type = type.base_type
if type == self.entry.type: if type == self.entry.type:
need_typedef_indirection = True need_typedef_indirection = True
if need_typedef_indirection and self.visibility != 'extern': if need_typedef_indirection:
# C can't handle typedef structs that refer to themselves. # C can't handle typedef structs that refer to themselves.
struct_entry = self.entry struct_entry = self.entry
cname = env.new_const_cname() cname = env.new_const_cname()
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment