From 9e39442dbcea39d652eea3afd9cb539301eecb2b Mon Sep 17 00:00:00 2001 From: michael Date: Sat, 1 Apr 2017 15:59:57 +0000 Subject: [PATCH] * Fix from Mattias Gaertner for System.Delete() use analyses. git-svn-id: trunk@35703 - --- packages/fcl-passrc/src/pasuseanalyzer.pas | 2 ++ packages/fcl-passrc/tests/tcuseanalyzer.pas | 2 ++ 2 files changed, 4 insertions(+) diff --git a/packages/fcl-passrc/src/pasuseanalyzer.pas b/packages/fcl-passrc/src/pasuseanalyzer.pas index 8bf7c199f1..497fe96da2 100644 --- a/packages/fcl-passrc/src/pasuseanalyzer.pas +++ b/packages/fcl-passrc/src/pasuseanalyzer.pas @@ -607,6 +607,8 @@ begin UseExpr(TPasExpr(El)) else if C=TPasEnumValue then MarkElementAsUsed(El) + else if C.InheritsFrom(TPasModule) then + // e.g. unitname.identifier -> the module is used by the identifier else RaiseNotSupported(20170307090947,El); end; diff --git a/packages/fcl-passrc/tests/tcuseanalyzer.pas b/packages/fcl-passrc/tests/tcuseanalyzer.pas index 36826c78b6..251d694a95 100644 --- a/packages/fcl-passrc/tests/tcuseanalyzer.pas +++ b/packages/fcl-passrc/tests/tcuseanalyzer.pas @@ -1134,8 +1134,10 @@ begin StartProgram(false); Add('var {#a_notused}a: longint;'); Add('var {#b_used}b: longint;'); + Add('var {#c_used}c: longint;'); Add('begin'); Add(' b:=2;'); + Add(' afile.c:=3;'); AnalyzeWholeProgram; end;