Browse Source

fcl-passrc: analyzer: use methods with message modifier

git-svn-id: trunk@41586 -
Mattias Gaertner 6 years ago
parent
commit
91c6b86a82

+ 5 - 0
packages/fcl-passrc/src/pasuseanalyzer.pas

@@ -2115,6 +2115,11 @@ begin
         end;
         end;
         //writeln('TPasAnalyzer.UseClassType ',El.FullName,' ',Mode,' ',Member.Name);
         //writeln('TPasAnalyzer.UseClassType ',El.FullName,' ',Mode,' ',Member.Name);
         end;
         end;
+      if Proc.MessageExpr<>nil then
+        begin
+        UseProcedure(Proc);
+        continue;
+        end;
       end
       end
     else if Member.ClassType=TPasAttributes then
     else if Member.ClassType=TPasAttributes then
       continue; // attributes are never used directly
       continue; // attributes are never used directly

+ 1 - 0
packages/pastojs/tests/tcmodules.pas

@@ -9995,6 +9995,7 @@ begin
   '  doit(vc,vc,vl,vl);',
   '  doit(vc,vc,vl,vl);',
   '  doit(vv,vv,vv,vv);',
   '  doit(vv,vv,vv,vv);',
   '  doit(vl,vl,vl,vl);',
   '  doit(vl,vl,vl,vl);',
+  //'  TRecord(U).i:=3;',
   'end;',
   'end;',
   'var i: TRecord;',
   'var i: TRecord;',
   'begin',
   'begin',