summaryrefslogtreecommitdiff
path: root/language/bytecode.ott
diff options
context:
space:
mode:
authorAlasdair Armstrong2018-06-29 22:04:55 +0100
committerAlasdair Armstrong2018-06-29 22:06:05 +0100
commit4a0fbe2a1c7e535aacbf53e56a2322b1a97ac2ef (patch)
tree7ea3fce40a5c44df4694e09604434182fa15ae8f /language/bytecode.ott
parent3a91534b233ab63fb5ac91ffd92a4d75cc533180 (diff)
Try to fix some tricky C compilation bugs, break everything instead
Diffstat (limited to 'language/bytecode.ott')
-rw-r--r--language/bytecode.ott13
1 files changed, 6 insertions, 7 deletions
diff --git a/language/bytecode.ott b/language/bytecode.ott
index 32b04bb4..caa94a53 100644
--- a/language/bytecode.ott
+++ b/language/bytecode.ott
@@ -102,12 +102,12 @@ cval :: 'CV_' ::=
{{ lem fragment * ctyp }}
clexp :: 'CL_' ::=
- | id :: :: id
- | id . string :: :: field
- | * id :: :: addr
- | id -> string :: :: addr_field
- | current_exception :: :: current_exception
- | have_exception :: :: have_exception
+ | id : ctyp :: :: id
+ | id . string : ctyp :: :: field
+ | * id : ctyp :: :: addr
+ | id -> string : ctyp :: :: addr_field
+ | current_exception : ctyp :: :: current_exception
+ | have_exception :: :: have_exception
ctype_def :: 'CTD_' ::=
{{ com C type definition }}
@@ -128,7 +128,6 @@ instr :: 'I_' ::=
| jump ( cval ) string :: :: jump
| clexp = bool id ( cval0 , ... , cvaln ) : ctyp :: :: funcall
| clexp = cval :: :: copy
- | clexp = ( ctyp ) id : ctyp' :: :: convert
| clear ctyp id :: :: clear
| return cval :: :: return
| { instr0 ; ... ; instrn } :: :: block