41 lines
1.4 KiB
Java
41 lines
1.4 KiB
Java
|
/*
|
||
|
* @test /nodynamiccopyright/
|
||
|
* @bug 6362067
|
||
|
* @summary Messager methods do not print out source position information
|
||
|
* @build T6362067
|
||
|
* @compile -processor T6362067 -proc:only T6362067.java
|
||
|
* @compile/ref=T6362067.out -XDstdout -XDrawDiagnostics -processor T6362067 -proc:only T6362067.java
|
||
|
*/
|
||
|
|
||
|
import java.util.Set;
|
||
|
import javax.annotation.processing.*;
|
||
|
import javax.lang.model.element.*;
|
||
|
import static javax.tools.Diagnostic.Kind.*;
|
||
|
|
||
|
@Deprecated // convenient test annotation
|
||
|
@SupportedAnnotationTypes("*")
|
||
|
public class T6362067 extends AbstractProcessor {
|
||
|
public boolean process(Set<? extends TypeElement> annos,
|
||
|
RoundEnvironment roundEnv) {
|
||
|
Messager msgr = processingEnv.getMessager();
|
||
|
for (Element e: roundEnv.getRootElements()) {
|
||
|
msgr.printMessage(NOTE, "note:elem", e);
|
||
|
for (AnnotationMirror a: e.getAnnotationMirrors()) {
|
||
|
msgr.printMessage(NOTE, "note:anno", e, a);
|
||
|
for (AnnotationValue v: a.getElementValues().values()) {
|
||
|
msgr.printMessage(NOTE, "note:value", e, a, v);
|
||
|
}
|
||
|
|
||
|
}
|
||
|
}
|
||
|
if (roundEnv.processingOver())
|
||
|
msgr.printMessage(NOTE, "note:nopos");
|
||
|
return true;
|
||
|
}
|
||
|
|
||
|
@Override
|
||
|
public javax.lang.model.SourceVersion getSupportedSourceVersion() {
|
||
|
return javax.lang.model.SourceVersion.latest();
|
||
|
}
|
||
|
}
|