diff options
Diffstat (limited to 'chapter15/src/main/java/com')
| -rw-r--r-- | chapter15/src/main/java/com/seaofnodes/simple/node/StartNode.java | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/chapter15/src/main/java/com/seaofnodes/simple/node/StartNode.java b/chapter15/src/main/java/com/seaofnodes/simple/node/StartNode.java index 14bf37f5..5964e19f 100644 --- a/chapter15/src/main/java/com/seaofnodes/simple/node/StartNode.java +++ b/chapter15/src/main/java/com/seaofnodes/simple/node/StartNode.java @@ -45,6 +45,9 @@ public class StartNode extends CFGNode implements MultiNode { n._type = args[f._alias]; scope.define(name, tm_decl, n); } + for (int i = 0; i < args.length; i++) + if (args[i] == null) + args[i] = Type.TOP; // We parsed a nested struct/array. Avoid nulls until a caller replaces this alias. _type = _args = TypeTuple.make(args); } |
