diff --git a/verse/parser/parser.py b/verse/parser/parser.py index 8961e0ce8698d94c5ce39176cb34b9c91db29b5b..60b6ee2354e2598e56674eb5ed31541680dcc7ea 100644 --- a/verse/parser/parser.py +++ b/verse/parser/parser.py @@ -623,6 +623,8 @@ def proc(node: ast.AST, env: Env) -> Any: elif isinstance(node, ast.Name):# and isinstance(node.ctx, ast.Load): return env.lookup(node.id) elif isinstance(node, ast.Attribute) and isinstance(node.ctx, ast.Load): + if isinstance(node.value, ast.Name) and node.value.id in env.mode_defs: + return node.attr obj = proc(node.value, env) # TODO since we know what the mode and state types contain we can do some typo checking if not_ir_ast(obj):