From cf4dfdfffa3cb2e7420ccbda64616515cd87547a Mon Sep 17 00:00:00 2001 From: Pierre-Marie de Rodat Date: Mon, 14 Oct 2024 13:17:13 +0000 Subject: [PATCH] lexical_envs/add_env_post: transition to lkt compile --- .../tests/lexical_envs/add_env_post/test.lkt | 18 +++++++++++++ .../tests/lexical_envs/add_env_post/test.out | 9 +++++-- .../tests/lexical_envs/add_env_post/test.py | 25 ------------------- .../tests/lexical_envs/add_env_post/test.yaml | 2 +- 4 files changed, 26 insertions(+), 28 deletions(-) create mode 100644 testsuite/tests/lexical_envs/add_env_post/test.lkt delete mode 100644 testsuite/tests/lexical_envs/add_env_post/test.py diff --git a/testsuite/tests/lexical_envs/add_env_post/test.lkt b/testsuite/tests/lexical_envs/add_env_post/test.lkt new file mode 100644 index 000000000..cab3892bc --- /dev/null +++ b/testsuite/tests/lexical_envs/add_env_post/test.lkt @@ -0,0 +1,18 @@ +# Check that add_env is forbidden in post-node PLE + +import lexer_example + +@with_lexer(foo_lexer) +grammar foo_grammar { + @main_rule main_rule <- Example("example") +} + +class FooNode implements Node[FooNode] { +} + +class Example: FooNode implements TokenNode { + env_spec { + handle_children() + add_env() + } +} diff --git a/testsuite/tests/lexical_envs/add_env_post/test.out b/testsuite/tests/lexical_envs/add_env_post/test.out index 92312a510..7e4324b91 100644 --- a/testsuite/tests/lexical_envs/add_env_post/test.out +++ b/testsuite/tests/lexical_envs/add_env_post/test.out @@ -1,2 +1,7 @@ -test.py:XXX: error: add_env() must occur before processing children -Done +== test.lkt == +test.lkt:16:9: error: add_env() must occur before processing children +16 | add_env() + | ^^^^^^^^^ + + +lkt_compile: Done diff --git a/testsuite/tests/lexical_envs/add_env_post/test.py b/testsuite/tests/lexical_envs/add_env_post/test.py deleted file mode 100644 index bc7b868fe..000000000 --- a/testsuite/tests/lexical_envs/add_env_post/test.py +++ /dev/null @@ -1,25 +0,0 @@ -""" -Check that add_env is forbidden in post-node PLE. -""" - -from langkit.diagnostics import DiagnosticError -from langkit.dsl import ASTNode -from langkit.envs import EnvSpec, add_env, handle_children - - -class FooNode(ASTNode): - pass - - -try: - class Example(FooNode): - token_node = True - - env_spec = EnvSpec( - handle_children(), - add_env(), - ) -except DiagnosticError: - pass - -print('Done') diff --git a/testsuite/tests/lexical_envs/add_env_post/test.yaml b/testsuite/tests/lexical_envs/add_env_post/test.yaml index 30423a038..4a499fbd3 100644 --- a/testsuite/tests/lexical_envs/add_env_post/test.yaml +++ b/testsuite/tests/lexical_envs/add_env_post/test.yaml @@ -1 +1 @@ -driver: python +driver: lkt_compile