From acab4c7c016a3391ce7ca254cfe23e5cb2fdcc83 Mon Sep 17 00:00:00 2001 From: Ivan Bondarev Date: Sun, 9 Jun 2024 10:50:26 +0200 Subject: [PATCH] #3091 --- TestSuite/errors/err0538.pas | 8 ++++++++ TreeConverter/TreeConversion/syntax_tree_visitor.cs | 2 ++ 2 files changed, 10 insertions(+) create mode 100644 TestSuite/errors/err0538.pas diff --git a/TestSuite/errors/err0538.pas b/TestSuite/errors/err0538.pas new file mode 100644 index 000000000..a0f78db91 --- /dev/null +++ b/TestSuite/errors/err0538.pas @@ -0,0 +1,8 @@ +//!Повторно объявленный идентификатор name +type + name = (name); + +begin + // Ожидался тип + var v1: name; +end. \ No newline at end of file diff --git a/TreeConverter/TreeConversion/syntax_tree_visitor.cs b/TreeConverter/TreeConversion/syntax_tree_visitor.cs index 61a06225f..69f142444 100644 --- a/TreeConverter/TreeConversion/syntax_tree_visitor.cs +++ b/TreeConverter/TreeConversion/syntax_tree_visitor.cs @@ -12211,6 +12211,8 @@ namespace PascalABCCompiler.TreeConverter context.check_name_free(name, loc); is_direct_type_decl = true; type_node tn = convert_strong(_type_declaration.type_def); + if (_type_declaration.type_def is enum_type_definition) + context.check_name_free(name, loc); assign_doc_info(tn,_type_declaration); is_direct_type_decl = false; if (_type_declaration.type_def is SyntaxTree.named_type_reference||