summaryrefslogtreecommitdiff
path: root/src/android-library
diff options
context:
space:
mode:
authorPaul Phillips <paulp@improving.org>2012-10-31 08:26:18 -0700
committerPaul Phillips <paulp@improving.org>2012-10-31 08:49:56 -0700
commit1e1199d8abbd81ab2fa3b9cbab0290d6793e0945 (patch)
treebde1e98d0f4a060d14e6ce681366d82f533d0ceb /src/android-library
parentb480d991072e6e68ed46574d87e4483da778ff0e (diff)
downloadscala-1e1199d8abbd81ab2fa3b9cbab0290d6793e0945.tar.gz
scala-1e1199d8abbd81ab2fa3b9cbab0290d6793e0945.tar.bz2
scala-1e1199d8abbd81ab2fa3b9cbab0290d6793e0945.zip
Fix for -Xcheckinit failures.
The GenASM phase had an eager val which required loading a bunch of symbols, which meant an earlier call to isPastTyper could lead to a cycle of the form: new Run new GenASM rootMirror.getRequiredClass findMember defineBaseClassesOfCompoundType isPastTyper currentRun.typerPhase and the opening "new Run" hasn't yet caught up to where currentRun.typerPhase is set. This was remedied by making the eager val lazy, and substantially hardened against recurrence via a method on global "isGlobalInitialized" which verifies that both the definitions object and the root mirror have completed their init methods.
Diffstat (limited to 'src/android-library')
0 files changed, 0 insertions, 0 deletions