22 */ |
22 */ |
23 |
23 |
24 /* |
24 /* |
25 * @test 6403456 |
25 * @test 6403456 |
26 * @summary -Werror should work with annotation processing |
26 * @summary -Werror should work with annotation processing |
|
27 * @library ../../lib |
|
28 * @build JavacTestingAbstractProcessor |
27 * @compile WErrorGen.java |
29 * @compile WErrorGen.java |
28 * @compile -proc:only -processor WErrorGen WErrorGen.java |
30 * @compile -proc:only -processor WErrorGen WErrorGen.java |
29 * @compile/fail/ref=WErrorGen.out -XDrawDiagnostics -Werror -Xlint:rawtypes -processor WErrorGen WErrorGen.java |
31 * @compile/fail/ref=WErrorGen.out -XDrawDiagnostics -Werror -Xlint:rawtypes -processor WErrorGen WErrorGen.java |
30 */ |
32 */ |
31 |
33 |
34 import javax.annotation.processing.*; |
36 import javax.annotation.processing.*; |
35 import javax.lang.model.*; |
37 import javax.lang.model.*; |
36 import javax.lang.model.element.*; |
38 import javax.lang.model.element.*; |
37 import javax.tools.*; |
39 import javax.tools.*; |
38 |
40 |
39 @SupportedAnnotationTypes("*") |
41 public class WErrorGen extends JavacTestingAbstractProcessor { |
40 public class WErrorGen extends AbstractProcessor { |
|
41 @Override |
42 @Override |
42 public boolean process(Set<? extends TypeElement> annotations, |
43 public boolean process(Set<? extends TypeElement> annotations, |
43 RoundEnvironment roundEnv) { |
44 RoundEnvironment roundEnv) { |
44 Filer filer = processingEnv.getFiler(); |
|
45 if (++round == 1) { |
45 if (++round == 1) { |
46 try { |
46 try { |
47 JavaFileObject fo = filer.createSourceFile("Gen"); |
47 JavaFileObject fo = filer.createSourceFile("Gen"); |
48 Writer out = fo.openWriter(); |
48 Writer out = fo.openWriter(); |
49 out.write("import java.util.*; class Gen { List l; }"); |
49 out.write("import java.util.*; class Gen { List l; }"); |