commit cf9f2e8ef7e775bcedf74b70a3dd35962484f1f1
parent 44fbc6023793b2f7dd7af42a94a8e5c5a515537d
Author: Michael Forney <mforney@mforney.org>
Date: Wed, 20 Feb 2019 12:57:04 -0800
doc: Aggregate types can be nested
Diffstat:
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/doc/il.txt b/doc/il.txt
@@ -215,16 +215,17 @@ using the `export` keyword.
# Regular type
'type' :IDENT '=' ['align' NUMBER]
'{'
- ( EXTTY [NUMBER] ),
+ ( SUBTY [NUMBER] ),
'}'
| # Opaque type
'type' :IDENT '=' 'align' NUMBER '{' NUMBER '}'
+ SUBTY := EXTTY | :IDENT
+
Aggregate type definitions start with the `type` keyword.
They have file scope, but types must be defined before being
referenced. The inner structure of a type is expressed by a
-comma-separated list of <@ Simple Types> enclosed in curly
-braces.
+comma-separated list of types enclosed in curly braces.
type :fourfloats = { s, s, d, d }