From d1a88e0b7a3ee1d8caf239d3e6dd826cb5da5f39 Mon Sep 17 00:00:00 2001 From: Maurizio Cimadamore Date: Tue, 18 Jun 2013 18:57:52 +0100 Subject: [PATCH] 8016607: javac, avoid analyzing lambdas for source 7 compilation Reviewed-by: jjg --- .../classes/com/sun/tools/javac/main/JavaCompiler.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/langtools/src/share/classes/com/sun/tools/javac/main/JavaCompiler.java b/langtools/src/share/classes/com/sun/tools/javac/main/JavaCompiler.java index 291a3414205..0c20e771cd9 100644 --- a/langtools/src/share/classes/com/sun/tools/javac/main/JavaCompiler.java +++ b/langtools/src/share/classes/com/sun/tools/javac/main/JavaCompiler.java @@ -1435,11 +1435,13 @@ public class JavaCompiler implements ClassReader.SourceCompleter { env.tree = transTypes.translateTopLevelClass(env.tree, localMake); compileStates.put(env, CompileState.TRANSTYPES); - if (shouldStop(CompileState.UNLAMBDA)) - return; + if (source.allowLambda()) { + if (shouldStop(CompileState.UNLAMBDA)) + return; - env.tree = lambdaToMethod.translateTopLevelClass(env, env.tree, localMake); - compileStates.put(env, CompileState.UNLAMBDA); + env.tree = lambdaToMethod.translateTopLevelClass(env, env.tree, localMake); + compileStates.put(env, CompileState.UNLAMBDA); + } if (shouldStop(CompileState.LOWER)) return;