ソースを参照

- disabled the set constant caching via static variables for now because
their initialization can cause races between the unit they are declared
in and the class constructor they are initialized in (even if both
would be moved to the unit initialization code, a class constructor
using the set constant could run before the unit initialization code has
run)

git-svn-id: branches/jvmbackend@18698 -

Jonas Maebe 14 年 前
コミット
d8977b0342
1 ファイル変更3 行追加0 行削除
  1. 3 0
      compiler/jvm/njvmcon.pas

+ 3 - 0
compiler/jvm/njvmcon.pas

@@ -343,6 +343,7 @@ implementation
           setconsttype:=sct_construct;
         result:=nil;
         case setconsttype of
+(*
           sct_constsymbol:
             begin
               { normally a codegen pass routine, but we have to insert a typed
@@ -354,12 +355,14 @@ implementation
               { no smallsets }
               expectloc:=LOC_CREFERENCE;
             end;
+*)
           sct_notransform:
             begin
               result:=inherited pass_1;
               { no smallsets }
               expectloc:=LOC_CREFERENCE;
             end;
+          sct_constsymbol,
           sct_construct:
             begin
               eledef:=tsetdef(resultdef).elementdef;