# HG changeset patch # User Michael Van De Vanter # Date 1443054299 25200 # Node ID bc3be6efa1ccfc22a235e1edd50cc8e19d5598a7 # Parent c1f9d1ea057ca6c06e2a4211a927855198abe2d5 Truffle/Instrumentation: move the registration if a newly loaded language's DefaultASTProber earlier in the language setup sequence diff -r c1f9d1ea057c -r bc3be6efa1cc truffle/com.oracle.truffle.api.vm/src/com/oracle/truffle/api/vm/TruffleVM.java --- a/truffle/com.oracle.truffle.api.vm/src/com/oracle/truffle/api/vm/TruffleVM.java Wed Sep 23 17:23:57 2015 -0700 +++ b/truffle/com.oracle.truffle.api.vm/src/com/oracle/truffle/api/vm/TruffleVM.java Wed Sep 23 17:24:59 2015 -0700 @@ -792,18 +792,17 @@ TruffleLanguage getImpl(boolean create) { getEnv(create); TruffleLanguage impl = info.getImpl(false); - if (impl != null) { - ASTProber prober = SPI.getDefaultASTProber(impl); - if (prober != null) { - instrumenter.registerASTProber(prober); - } - } return impl; } TruffleLanguage.Env getEnv(boolean create) { if (env == null && create) { - env = SPI.attachEnv(TruffleVM.this, info.getImpl(true), out, err, in, TruffleVM.this.instrumenter); + final TruffleLanguage impl = info.getImpl(true); + ASTProber prober = SPI.getDefaultASTProber(impl); + if (prober != null) { + instrumenter.registerASTProber(prober); + } + env = SPI.attachEnv(TruffleVM.this, impl, out, err, in, TruffleVM.this.instrumenter); } return env; }