summaryrefslogtreecommitdiffstats
path: root/ppapi/generators/idl_ast.py
diff options
context:
space:
mode:
Diffstat (limited to 'ppapi/generators/idl_ast.py')
-rw-r--r--ppapi/generators/idl_ast.py17
1 files changed, 14 insertions, 3 deletions
diff --git a/ppapi/generators/idl_ast.py b/ppapi/generators/idl_ast.py
index 71aaf93..af06de3 100644
--- a/ppapi/generators/idl_ast.py
+++ b/ppapi/generators/idl_ast.py
@@ -109,12 +109,23 @@ class IDLAst(IDLNode):
def __init__(self, children):
objs = []
+ builtin = None
+ extranodes = []
+ for filenode in children:
+ if filenode.GetProperty('NAME') == 'pp_stdint.idl':
+ builtin = filenode
+ break
+
+ if not builtin:
+ builtin = IDLFile('pp_stdint.idl', [])
+ extranodes = [builtin]
+
for name in BuiltIn:
nameattr = IDLAttribute('NAME', name)
- objs.append(IDLNode('Type', 'BuiltIn', 1, 0, [nameattr]))
+ typenode = IDLNode('Type', 'BuiltIn', 1, 0, [nameattr])
+ builtin.AddChild(typenode)
- builtin = IDLFile('pp_stdint.idl', objs)
- IDLNode.__init__(self, 'AST', 'BuiltIn', 1, 0, [builtin] + children)
+ IDLNode.__init__(self, 'AST', 'BuiltIn', 1, 0, extranodes + children)
self.SetProperty('LABEL', IDLVersionMapDefault())
self.Resolve()