diff options
| author | Cliff Click <cliffc@acm.org> | 2024-09-04 09:56:17 -0700 |
|---|---|---|
| committer | Thalia Archibald <thalia@archibald.dev> | 2024-09-07 10:54:48 -0700 |
| commit | 32a45da280ddf0a25a24878399b6253d60b1fa84 (patch) | |
| tree | 517ce8d660dceb56a64691c8306995da6bff08d1 /chapter14/src/test | |
| parent | 29db69cb40c2fda992a704a50e9159a1a3e23ac9 (diff) | |
| download | Simple-32a45da280ddf0a25a24878399b6253d60b1fa84.tar.gz Simple-32a45da280ddf0a25a24878399b6253d60b1fa84.zip | |
All the remaining narrow types
Narrow f32, requires a Round node.
Diffstat (limited to 'chapter14/src/test')
| -rw-r--r-- | chapter14/src/test/java/com/seaofnodes/simple/Chapter14Test.java | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/chapter14/src/test/java/com/seaofnodes/simple/Chapter14Test.java b/chapter14/src/test/java/com/seaofnodes/simple/Chapter14Test.java index 268111d8..682eff15 100644 --- a/chapter14/src/test/java/com/seaofnodes/simple/Chapter14Test.java +++ b/chapter14/src/test/java/com/seaofnodes/simple/Chapter14Test.java @@ -115,4 +115,30 @@ return c; // assertEquals(52501L, Evaluator.evaluate(stop, 0)); } + @Test + public void testTypes() { + Parser parser = new Parser( +""" +i8 xi8 = 123456789; if( xi8 != 21 ) return -8; +i16 xi16 = 123456789; if( xi16 != -13035 ) return -16; +i32 xi32 = 123456789; if( xi32 != 123456789 ) return -32; +i64 xi64 = 123456789; if( xi64 != 123456789 ) return -64; +int xint = 123456789; if( xint != 123456789 ) return -64; + +u1 ui1 = 123456789; if( ui1 != 1 ) return 1; +u8 ui8 = 123456789; if( ui8 != 21 ) return 8; +u16 ui16 = 123456789; if( ui16 != 52501 ) return 16; +u32 ui32 = 123456789; if( ui32 != 123456789 ) return 32; + +flt fflt = 3.141592653589793; if( fflt != 3.141592653589793 ) return 3; +f64 ff64 = 3.141592653589793; if( ff64 != 3.141592653589793 ) return 3; +f32 ff32 = 3.141592653589793; if( ff32 != 3.1415927410125732) return 5; + +return 0; +"""); + StopNode stop = parser.parse(false).iterate(false); + assertEquals("return 0;", stop.toString()); + assertEquals(0L, Evaluator.evaluate(stop, 0)); + } + } |
