diff options
| author | Gabriel Kerneis | 2014-02-05 17:11:12 +0000 |
|---|---|---|
| committer | Gabriel Kerneis | 2014-02-05 17:11:12 +0000 |
| commit | 48a0e38202340ad72f4827474198c7f00bac2bc6 (patch) | |
| tree | e09fdca9476ade9a782148eb7c1e63e2591d8415 /src/test/test1.sail | |
| parent | e99d40206441306f472fb7ba896967183673fd61 (diff) | |
Adding failing typechecking test
File "test/test1.sail", line 27, character 22 to line 27, character 26
Type error: Type mismatch :(6() * ) , bit
Diffstat (limited to 'src/test/test1.sail')
| -rw-r--r-- | src/test/test1.sail | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/src/test/test1.sail b/src/test/test1.sail index 78258929..c035ea4b 100644 --- a/src/test/test1.sail +++ b/src/test/test1.sail @@ -13,6 +13,22 @@ let bool e = true let bit v = bitzero let ( bit [ 32 ] ) v1 = 0b101 +(* scattered function definition and union definition *) +scattered function unit f +scattered typedef ast = const union + +union ast member bit * bit * bit A +function clause f ( A (a,b,c) ) = () + +union ast member bit * bit B +function clause f ( B (a,b) ) = () + +union ast member bit C +function clause f ( C (a) ) = () + +end f +end ast + function bit sw s = switch s { case 0 -> bitzero } function bit main _ = {sw(0); v1[0] } |
