diff --git a/Configuration/GlobalAssemblyInfo.cs b/Configuration/GlobalAssemblyInfo.cs index e89249dd0..72bd2cde5 100644 --- a/Configuration/GlobalAssemblyInfo.cs +++ b/Configuration/GlobalAssemblyInfo.cs @@ -15,7 +15,7 @@ internal static class RevisionClass public const string Major = "3"; public const string Minor = "4"; public const string Build = "2"; - public const string Revision = "2027"; + public const string Revision = "2028"; public const string MainVersion = Major + "." + Minor; public const string FullVersion = Major + "." + Minor + "." + Build + "." + Revision; diff --git a/Configuration/Version.defs b/Configuration/Version.defs index 68f3441ca..e9ed3a8fa 100644 --- a/Configuration/Version.defs +++ b/Configuration/Version.defs @@ -1,4 +1,4 @@ -%COREVERSION%=2 -%REVISION%=2027 %MINOR%=4 +%REVISION%=2028 +%COREVERSION%=2 %MAJOR%=3 diff --git a/ReleaseGenerators/PascalABCNET_version.nsh b/ReleaseGenerators/PascalABCNET_version.nsh index 4b260692d..e24c3d2dd 100644 --- a/ReleaseGenerators/PascalABCNET_version.nsh +++ b/ReleaseGenerators/PascalABCNET_version.nsh @@ -1 +1 @@ -!define VERSION '3.4.2.2027' +!define VERSION '3.4.2.2028' diff --git a/TestSuite/CompilationSamples/GraphABC.pas b/TestSuite/CompilationSamples/GraphABC.pas index 40fb12c80..300f8e26a 100644 --- a/TestSuite/CompilationSamples/GraphABC.pas +++ b/TestSuite/CompilationSamples/GraphABC.pas @@ -3574,6 +3574,7 @@ begin gr.Transform := m; end; Monitor.Exit(f); + tempbmp.Dispose(); end; procedure FullRedraw; diff --git a/TestSuite/lambda_tryexcept.pas b/TestSuite/lambda_tryexcept.pas new file mode 100644 index 000000000..150549e0b --- /dev/null +++ b/TestSuite/lambda_tryexcept.pas @@ -0,0 +1,12 @@ +begin + + var p: procedure := ()-> + begin end; + + try + except + on e: System.ArgumentException do; + on e: Exception do; // Ошибка: Повторно объявленный идентификатор e + end; + Assert(1=1) +end. \ No newline at end of file diff --git a/TreeConverter/LambdaExpressions/Closure/CapturedVariablesTreeBuilder.cs b/TreeConverter/LambdaExpressions/Closure/CapturedVariablesTreeBuilder.cs index 8814d07a7..2aa93adb5 100644 --- a/TreeConverter/LambdaExpressions/Closure/CapturedVariablesTreeBuilder.cs +++ b/TreeConverter/LambdaExpressions/Closure/CapturedVariablesTreeBuilder.cs @@ -135,13 +135,13 @@ namespace TreeConverter.LambdaExpressions.Closure public override void visit(exception_handler eh) { - _visitor.context.add_var_definition(eh.variable.name, _visitor.get_location(eh.variable), _visitor.convert_strong(eh.type_name), PascalABCCompiler.SemanticTree.polymorphic_state.ps_common, true); - SymbolInfo si = _visitor.context.find_first(eh.variable.name); - var csi = new CapturedVariablesTreeNode.CapturedSymbolInfo(eh, si); + //_visitor.context.add_var_definition(eh.variable.name, _visitor.get_location(eh.variable), _visitor.convert_strong(eh.type_name), PascalABCCompiler.SemanticTree.polymorphic_state.ps_common, true); + //SymbolInfo si = _visitor.context.find_first(eh.variable.name); + //var csi = new CapturedVariablesTreeNode.CapturedSymbolInfo(eh, si); //_currentTreeNode.VariablesDefinedInScope.Add(new CapturedVariablesTreeNode.CapturedSymbolInfo(eh, si)); - _pendingCapturedSymbols.Add(csi); + //_pendingCapturedSymbols.Add(csi); ProcessNode(eh.statements); - _pendingCapturedSymbols.Remove(csi); + //_pendingCapturedSymbols.Remove(csi); } public override void visit(ident id) diff --git a/bin/Lib/GraphABC.pas b/bin/Lib/GraphABC.pas index 40fb12c80..300f8e26a 100644 --- a/bin/Lib/GraphABC.pas +++ b/bin/Lib/GraphABC.pas @@ -3574,6 +3574,7 @@ begin gr.Transform := m; end; Monitor.Exit(f); + tempbmp.Dispose(); end; procedure FullRedraw;