summaryrefslogtreecommitdiff
path: root/packages/pastojs
diff options
context:
space:
mode:
authormattias <mattias@3ad0048d-3df7-0310-abae-a5850022a9f2>2019-02-16 23:26:40 +0000
committermattias <mattias@3ad0048d-3df7-0310-abae-a5850022a9f2>2019-02-16 23:26:40 +0000
commitf77fbe4ed38b8195209f82e26ffefb743fdf4ff9 (patch)
tree648460e25c42c2716d9acf71845607e18b038fe2 /packages/pastojs
parent3a5cddeb920030c4ace513f7475d05e1ea0bc28e (diff)
downloadfpc-f77fbe4ed38b8195209f82e26ffefb743fdf4ff9.tar.gz
pastojs: fixed mark impl scope ref of VarRecs
git-svn-id: https://svn.freepascal.org/svn/fpc/trunk@41350 3ad0048d-3df7-0310-abae-a5850022a9f2
Diffstat (limited to 'packages/pastojs')
-rw-r--r--packages/pastojs/src/pas2jsuseanalyzer.pp11
1 files changed, 8 insertions, 3 deletions
diff --git a/packages/pastojs/src/pas2jsuseanalyzer.pp b/packages/pastojs/src/pas2jsuseanalyzer.pp
index d2968933cc..fd78ef8de6 100644
--- a/packages/pastojs/src/pas2jsuseanalyzer.pp
+++ b/packages/pastojs/src/pas2jsuseanalyzer.pp
@@ -48,6 +48,8 @@ procedure TPas2JSAnalyzer.UseExpr(El: TPasExpr);
i: Integer;
ArgType: TPasType;
ModScope: TPas2JSModuleScope;
+ aMod: TPasModule;
+ SystemVarRecs: TPasFunction;
begin
if Args=nil then exit;
for i:=0 to Args.Count-1 do
@@ -58,10 +60,13 @@ procedure TPas2JSAnalyzer.UseExpr(El: TPasExpr);
and (TPasArrayType(ArgType).ElType=nil) then
begin
// array of const
- ModScope:=NoNil(Resolver.RootElement.CustomData) as TPas2JSModuleScope;
- if ModScope.SystemVarRecs=nil then
+ aMod:=El.GetModule;
+ ModScope:=NoNil(aMod.CustomData) as TPas2JSModuleScope;
+ SystemVarRecs:=ModScope.SystemVarRecs;
+ if SystemVarRecs=nil then
RaiseNotSupported(20190216104347,El);
- UseProcedure(ModScope.SystemVarRecs);
+ MarkImplScopeRef(El,SystemVarRecs,psraRead);
+ UseProcedure(SystemVarRecs);
break;
end;
end;