8068639: Make certain annotation classfile warnings opt-in

Reviewed-by: jjg
This commit is contained in:
Joe Darcy 2015-01-07 17:06:47 -08:00
parent e6ea1f0ff8
commit 5cb7065612
3 changed files with 21 additions and 18 deletions

View file

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 1999, 2014, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 1999, 2015, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
@ -1740,15 +1740,17 @@ public class ClassReader {
// The method wasn't found: emit a warning and recover // The method wasn't found: emit a warning and recover
JavaFileObject prevSource = log.useSource(requestingOwner.classfile); JavaFileObject prevSource = log.useSource(requestingOwner.classfile);
try { try {
if (failure == null) { if (lintClassfile) {
log.warning("annotation.method.not.found", if (failure == null) {
container, log.warning("annotation.method.not.found",
name); container,
} else { name);
log.warning("annotation.method.not.found.reason", } else {
container, log.warning("annotation.method.not.found.reason",
name, container,
failure.getDetailValue());//diagnostic, if present name,
failure.getDetailValue());//diagnostic, if present
}
} }
} finally { } finally {
log.useSource(prevSource); log.useSource(prevSource);

View file

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
@ -23,9 +23,10 @@
/** /**
* @test * @test
* @bug 6214965 6365854 * @bug 6214965 6365854 8068639
* @summary Compiler crash on redefing nested annotation types * @summary Compiler crash on redefing nested annotation types
* @compile CompilerAnnotationTest.java CompilerAnnotationTest2.java * @compile CompilerAnnotationTest.java CompilerAnnotationTest2.java
* @compile CompilerAnnotationTest2bad.java * @compile CompilerAnnotationTest2bad.java
* @compile/ref=T6214965.out -XDrawDiagnostics CompilerAnnotationTest2bad.java * @compile/ref=T6214965.out -XDrawDiagnostics -Xlint:classfile CompilerAnnotationTest2bad.java
* @compile -Werror CompilerAnnotationTest2bad.java
*/ */

View file

@ -1,5 +1,5 @@
/* /*
* Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved. * Copyright (c) 2005, 2015, Oracle and/or its affiliates. All rights reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
* *
* This code is free software; you can redistribute it and/or modify it * This code is free software; you can redistribute it and/or modify it
@ -23,7 +23,7 @@
/** /**
* @test * @test
* @bug 6365854 * @bug 6365854 8068639
* @summary javac crashes when compiling against an annotated class * @summary javac crashes when compiling against an annotated class
* @compile TestAnnotation.java TestCore.java * @compile TestAnnotation.java TestCore.java
* @clean test.annotation.TestAnnotation * @clean test.annotation.TestAnnotation
@ -33,11 +33,11 @@
* *
* @compile TestAnnotation.java TestCore.java * @compile TestAnnotation.java TestCore.java
* @clean test.annotation.TestAnnotation * @clean test.annotation.TestAnnotation
* @compile/ref=test1.out -XDrawDiagnostics T6365854.java * @compile/ref=test1.out -XDrawDiagnostics -Xlint:classfile T6365854.java
* @run main T6365854 * @run main T6365854
* @compile/ref=test2.out -XDrawDiagnostics evolve/TestAnnotation.java T6365854.java * @compile/ref=test2.out -XDrawDiagnostics -Xlint:classfile evolve/TestAnnotation.java T6365854.java
* @run main T6365854 * @run main T6365854
* @compile/ref=test2.out -XDrawDiagnostics T6365854.java * @compile/ref=test2.out -XDrawDiagnostics -Xlint:classfile T6365854.java
* @run main T6365854 * @run main T6365854
*/ */