diff options
| author | Ginger Bill <bill@gingerbill.org> | 2017-07-13 22:35:00 +0100 |
|---|---|---|
| committer | Ginger Bill <bill@gingerbill.org> | 2017-07-13 22:35:00 +0100 |
| commit | 1c5ddd65b4f66c4d37bd9da0facb229bbcea22eb (patch) | |
| tree | 78078fbb2cf23b31689bb6842ba30e487f199447 /src/checker.cpp | |
| parent | b8697fb4ed34d0da0fa0888b57e6edcc37a0ce81 (diff) | |
Rudimentary support for parametric polymorphic types
Diffstat (limited to 'src/checker.cpp')
| -rw-r--r-- | src/checker.cpp | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/checker.cpp b/src/checker.cpp index d7882414a..1cbf5db40 100644 --- a/src/checker.cpp +++ b/src/checker.cpp @@ -301,6 +301,7 @@ struct CheckerInfo { Map<ExprInfo> untyped; // Key: AstNode * | Expression -> ExprInfo Map<Entity *> implicits; // Key: AstNode * Map<Array<Entity *> > gen_procs; // Key: AstNode * | Identifier -> Entity + Map<Array<Entity *> > gen_types; // Key: Type * Map<DeclInfo *> entities; // Key: Entity * Map<Entity *> foreigns; // Key: String Map<AstFile *> files; // Key: String (full path) @@ -742,6 +743,7 @@ void init_checker_info(CheckerInfo *i) { map_init(&i->foreigns, a); map_init(&i->implicits, a); map_init(&i->gen_procs, a); + map_init(&i->gen_types, a); map_init(&i->type_info_map, a); map_init(&i->files, a); i->type_info_count = 0; @@ -758,6 +760,7 @@ void destroy_checker_info(CheckerInfo *i) { map_destroy(&i->foreigns); map_destroy(&i->implicits); map_destroy(&i->gen_procs); + map_destroy(&i->gen_types); map_destroy(&i->type_info_map); map_destroy(&i->files); } |