diff options
| author | Cliff Click <cliffc@acm.org> | 2026-08-21 09:34:34 -0700 |
|---|---|---|
| committer | Cliff Click <cliffc@acm.org> | 2026-08-21 09:34:34 -0700 |
| commit | 66e426e7c4576a8433449bc649597cf63f22436e (patch) | |
| tree | ebfdd4e8198769e9664413704cba42bb86f324b5 /chapter25/src/main/java | |
| parent | 5a41bcb1e28977b4b36ea55e3512f0972c69d69f (diff) | |
| download | Simple-66e426e7c4576a8433449bc649597cf63f22436e.tar.gz Simple-66e426e7c4576a8433449bc649597cf63f22436e.zip | |
Add some Type test cases
Diffstat (limited to 'chapter25/src/main/java')
| -rw-r--r-- | chapter25/src/main/java/com/seaofnodes/simple/type/TypeFunPtr.java | 10 | ||||
| -rw-r--r-- | chapter25/src/main/java/com/seaofnodes/simple/type/TypeMem.java | 8 |
2 files changed, 16 insertions, 2 deletions
diff --git a/chapter25/src/main/java/com/seaofnodes/simple/type/TypeFunPtr.java b/chapter25/src/main/java/com/seaofnodes/simple/type/TypeFunPtr.java index d18ebd9c..ff52c93b 100644 --- a/chapter25/src/main/java/com/seaofnodes/simple/type/TypeFunPtr.java +++ b/chapter25/src/main/java/com/seaofnodes/simple/type/TypeFunPtr.java @@ -86,7 +86,15 @@ public class TypeFunPtr extends TypeNil { public static TypeFunPtr TEST0 = make((byte)3,true,TINTMEM,TypeInteger.BOT, XInt.SET3); public static TypeFunPtr MAIN = make((byte)3,true,TINT ,Type.BOTTOM, XInt.FULL); // Main can return anything public static TypeFunPtr CALLOC= make((byte)3,true,TINTINT,TypeMemPtr .BOT, XInt.FULL); - public static void gather(ArrayList<Type> ts) { ts.add(TEST); ts.add(TEST0); ts.add(BOT); ts.add(MAIN);ts.add(CALLOC); } + public static void gather(ArrayList<Type> ts) { + ts.add(TEST); + ts.add(TEST0); + ts.add(BOT); + ts.add(MAIN); + ts.add(CALLOC); + ts.add(make((byte)2,false,TINT,TypeInteger.I32, XInt.SET1)); + ts.add(make((byte)2,true ,TINT,TypeInteger.BOT, XInt.SET3)); + } private static final Type[] ARG_EMPTY = new Type[0]; @Override diff --git a/chapter25/src/main/java/com/seaofnodes/simple/type/TypeMem.java b/chapter25/src/main/java/com/seaofnodes/simple/type/TypeMem.java index c634aab0..420dea55 100644 --- a/chapter25/src/main/java/com/seaofnodes/simple/type/TypeMem.java +++ b/chapter25/src/main/java/com/seaofnodes/simple/type/TypeMem.java @@ -105,7 +105,13 @@ public class TypeMem extends Type { public static final TypeMem START= make(1,Type.BOTTOM,false,false,false, XInt.EMPTY, XInt.EMPTY); public static final TypeMem SELF_MEM = make(1, TypeStruct.BOT); - public static void gather(ArrayList<Type> ts) { ts.add(make(2,Type.NIL)); ts.add(make(2,TypeInteger.ZERO)); ts.add(BOT); ts.add(SELF_MEM); ts.add(START); } + public static void gather(ArrayList<Type> ts) { + ts.add(make(2,Type.NIL)); + ts.add(make(2,TypeInteger.ZERO)); + ts.add(BOT); + ts.add(SELF_MEM); + ts.add(START); + } @Override TypeMem xmeet(Type t) { |
