diff options
| author | gingerBill <bill@gingerbill.org> | 2021-07-10 23:51:37 +0100 |
|---|---|---|
| committer | gingerBill <bill@gingerbill.org> | 2021-07-10 23:51:37 +0100 |
| commit | d9e6ade03007f4ede6471a6ada23b2469e2f052d (patch) | |
| tree | ef13bc1d0b2b547abb3403c1f0e48226910c6ecc /src/checker.hpp | |
| parent | 690374d4dec42365fd28cd6f9f1361697fdd7b9f (diff) | |
Add experimental support for a threaded semantic checker to `-threaded-checker`
Diffstat (limited to 'src/checker.hpp')
| -rw-r--r-- | src/checker.hpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/checker.hpp b/src/checker.hpp index 9395d1565..6a00ce0e1 100644 --- a/src/checker.hpp +++ b/src/checker.hpp @@ -144,6 +144,7 @@ struct DeclInfo { Type * gen_proc_type; // Precalculated bool is_using; bool where_clauses_evaluated; + bool proc_checked; CommentGroup *comment; CommentGroup *docs; @@ -289,6 +290,7 @@ struct CheckerInfo { gbMutex identifier_uses_mutex; gbMutex entity_mutex; gbMutex foreign_mutex; + gbMutex scope_mutex; Map<ExprInfo *> untyped; // Key: Ast * | Expression -> ExprInfo * // NOTE(bill): This needs to be a map and not on the Ast @@ -398,7 +400,6 @@ Entity *scope_insert (Scope *s, Entity *entity); ExprInfo *check_get_expr_info (CheckerInfo *i, Ast *expr); -void check_remove_expr_info (CheckerInfo *i, Ast *expr); void add_untyped (CheckerInfo *i, Ast *expression, bool lhs, AddressingMode mode, Type *basic_type, ExactValue value); void add_type_and_value (CheckerInfo *i, Ast *expression, AddressingMode mode, Type *type, ExactValue value); void add_entity_use (CheckerContext *c, Ast *identifier, Entity *entity); |