From 35f217128e10f2285ca4bac189e2382930fe6e56 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=91=D0=BE=D0=BD=D0=B4=D0=B0=D1=80=D0=B5=D0=B2=20=D0=98?= =?UTF-8?q?=D0=B2=D0=B0=D0=BD?= Date: Sat, 5 May 2018 16:21:07 +0200 Subject: [PATCH] bug fix #801 --- Optimizer/Optimizer.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Optimizer/Optimizer.cs b/Optimizer/Optimizer.cs index 502a24cfd..cb1e03008 100644 --- a/Optimizer/Optimizer.cs +++ b/Optimizer/Optimizer.cs @@ -563,7 +563,7 @@ namespace PascalABCCompiler is_break_stmt = false; sn = stmt.statements[i]; VisitStatement(sn); - if (is_break_stmt && !has_goto && i < stmt.statements.Count - 1 && stmt.statements[i + 1].semantic_node_type != semantic_node_type.empty_statement) + if (is_break_stmt && !has_goto && i < stmt.statements.Count - 1 && stmt.statements[i + 1].semantic_node_type != semantic_node_type.empty_statement && stmt.statements[i + 1].location != null) warns.Add(new UnreachableCodeDetected(stmt.statements[i + 1].location)); if (!(i < stmt.statements.Count - 1 && stmt.statements[i + 1].semantic_node_type == semantic_node_type.empty_statement)) is_break_stmt = false;