Преглед на файлове

* always return true from tjvmnodeutils.force_init(), because when this
routine is called we don't know yet whether it has to be forced or not
for the JVM target (staticvarsyms that need initialization may still be
created during pass1 of the main program/unit code)

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

Jonas Maebe преди 14 години
родител
ревизия
cfe125198c
променени са 1 файла, в които са добавени 5 реда и са изтрити 4 реда
  1. 5 4
      compiler/jvm/njvmutil.pas

+ 5 - 4
compiler/jvm/njvmutil.pas

@@ -105,10 +105,11 @@ implementation
   class function tjvmnodeutils.force_init: boolean;
     begin
       { we need an initialisation in case the al_globals list is not empty
-        (that's where the initialisation for global records is added) }
-      result:=
-        inherited or
-        not current_asmdata.asmlists[al_globals].empty;
+        (that's where the initialisation for global records etc is added) }
+      { problem: some bss symbols are only registered while processing the main
+        program (e.g. constant sets) -> cannot predict whether or not we'll
+        need it in advance }
+      result:=true;
     end;
 
   class procedure tjvmnodeutils.insertbssdata(sym: tstaticvarsym);