diff options
author | mattias <mattias@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2019-02-16 23:26:40 +0000 |
---|---|---|
committer | mattias <mattias@3ad0048d-3df7-0310-abae-a5850022a9f2> | 2019-02-16 23:26:40 +0000 |
commit | f77fbe4ed38b8195209f82e26ffefb743fdf4ff9 (patch) | |
tree | 648460e25c42c2716d9acf71845607e18b038fe2 /packages/pastojs | |
parent | 3a5cddeb920030c4ace513f7475d05e1ea0bc28e (diff) | |
download | fpc-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.pp | 11 |
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; |