diff options
| author | Robert Obkircher <robert.obkircher@gmail.com> | 2024-10-05 00:51:33 +0200 |
|---|---|---|
| committer | Cliff Click <cliffc@acm.org> | 2024-10-06 08:56:22 -0700 |
| commit | d2791c7283be71f6f3103fbedfd709c4d0f70c59 (patch) | |
| tree | 037c54f93f2accde37055df2ae2ca60fe77a27e1 /chapter15/src/main/java/com | |
| parent | ea41e5ca82736ad8380f856c3901cb0efb65e957 (diff) | |
| download | Simple-d2791c7283be71f6f3103fbedfd709c4d0f70c59.tar.gz Simple-d2791c7283be71f6f3103fbedfd709c4d0f70c59.zip | |
fix parsing nested structs
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); } |
