浏览代码

- 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;