diff options
Diffstat (limited to 'include/elna/boot/symbol.h')
| -rw-r--r-- | include/elna/boot/symbol.h | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/include/elna/boot/symbol.h b/include/elna/boot/symbol.h index 1caba83..0c1026d 100644 --- a/include/elna/boot/symbol.h +++ b/include/elna/boot/symbol.h @@ -40,6 +40,7 @@ namespace elna::boot struct slice_type; struct procedure_type; struct enumeration_type; + struct extern_type; /** * Represents a type stored in the symbol table. @@ -59,7 +60,8 @@ namespace elna::boot std::shared_ptr<array_type>, std::shared_ptr<slice_type>, std::shared_ptr<procedure_type>, - std::shared_ptr<enumeration_type> + std::shared_ptr<enumeration_type>, + std::shared_ptr<extern_type> >; Payload payload; @@ -188,6 +190,15 @@ namespace elna::boot explicit enumeration_type(const std::vector<std::string>& members); }; + /** + * An opaque type declared with \c type T = extern. The representation is + * unknown, so the type has no properties and can only be used behind a + * pointer. + */ + struct extern_type + { + }; + class type_info; class procedure_info; class variable_info; |
