summaryrefslogtreecommitdiff
path: root/language
diff options
context:
space:
mode:
authorAlasdair Armstrong2018-08-20 18:37:23 +0100
committerAlasdair Armstrong2018-08-20 18:37:23 +0100
commit7542e0d88b914fd949ad023284db773e61ce6b5a (patch)
tree3004cbb37cfe9700544fcfac2c3d03f3c2fd0870 /language
parent1d7b5f0ddaa6b80babc34180fee5fb4f191283e4 (diff)
Refactor tuple conversions in Sail to C compilation
Make the C l-expression type in Sail more generic and expressive, and refactor the generation of conversions into a seperate codegen_conversion function, which can handle more complex cases than the previous more ad-hoc method.
Diffstat (limited to 'language')
-rw-r--r--language/bytecode.ott6
1 files changed, 3 insertions, 3 deletions
diff --git a/language/bytecode.ott b/language/bytecode.ott
index 6488dd0c..cbc60e52 100644
--- a/language/bytecode.ott
+++ b/language/bytecode.ott
@@ -105,9 +105,9 @@ cval :: 'CV_' ::=
clexp :: 'CL_' ::=
| id : ctyp :: :: id
- | id . string : ctyp :: :: field
- | * id : ctyp :: :: addr
- | id -> string : ctyp :: :: addr_field
+ | clexp . string :: :: field
+ | * clexp :: :: addr
+ | clexp . nat :: :: tuple
| current_exception : ctyp :: :: current_exception
| have_exception :: :: have_exception