TestFatalityOfParseErrors.java revision 2777:7b2e1f42a6ad
1/* 2 * @test /nodynamiccopyright/ 3 * @bug 6403459 4 * @summary Test that generating programs with syntax errors is a fatal condition 5 * @author Joseph D. Darcy 6 * @library /tools/javac/lib 7 * @build JavacTestingAbstractProcessor 8 * @compile TestReturnCode.java 9 * @compile TestFatalityOfParseErrors.java 10 * @compile/fail/ref=TestFatalityOfParseErrors.out -XDrawDiagnostics -XprintRounds -processor TestFatalityOfParseErrors -proc:only TestFatalityOfParseErrors.java 11 */ 12 13import java.util.Set; 14import javax.annotation.processing.*; 15import javax.lang.model.SourceVersion; 16import static javax.lang.model.SourceVersion.*; 17import javax.lang.model.element.*; 18import javax.lang.model.util.*; 19import static javax.tools.Diagnostic.Kind.*; 20 21import java.io.PrintWriter; 22import java.io.IOException; 23 24/** 25 * Write out an incomplete source file and observe that the next round 26 * is marked as an error. 27 */ 28public class TestFatalityOfParseErrors extends JavacTestingAbstractProcessor { 29 30 public boolean process(Set<? extends TypeElement> annotations, 31 RoundEnvironment roundEnvironment) { 32 try (PrintWriter pw = new PrintWriter(filer.createSourceFile("SyntaxError").openWriter())) { 33 pw.println("class SyntaxError {"); 34 } catch (IOException ioException) { 35 } 36 return true; 37 } 38} 39