/*
* Copyright ( c ) 2003 , 2016 , Oracle and / or its affiliates . All rights reserved .
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER .
*
* This code is free software ; you can redistribute it and / or modify it
* under the terms of the GNU General Public License version 2 only , as
* published by the Free Software Foundation .
*
* This code is distributed in the hope that it will be useful , but WITHOUT
* ANY WARRANTY ; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE . See the GNU General Public License
* version 2 for more details ( a copy is included in the LICENSE file that
* accompanied this code ) .
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work ; if not , write to the Free Software Foundation ,
* Inc . , 51 Franklin St , Fifth Floor , Boston , MA 02110 - 1301 USA .
*
* Please contact Oracle , 500 Oracle Parkway , Redwood Shores , CA 94065 USA
* or visit www . oracle . com if you need additional information or have any
* questions .
*/
/*
* @ test
* @ bug 4904495
* @ summary Compilation may go awry if we ask a symbol for its flags during
* javac ' s Enter phase , before the flags are generally available .
* @ modules jdk . javadoc / jdk . javadoc . internal . tool
*/
import java.util.Collections;
import java.util.Locale;
import java.util.Set;
import javax.lang.model.SourceVersion;
import jdk.javadoc.doclet.Doclet;
import jdk.javadoc.doclet.Reporter;
import jdk.javadoc.doclet.DocletEnvironment;
public class FlagsTooEarly implements Doclet {
public static void main(String[] args) {
String thisFile = "" +
new java.io.File(System.getProperty("test.src" , "." ),
"FlagsTooEarly.java" );
String[] argarray = {
"-docletpath" , System.getProperty("test.classes" , "." ),
"-doclet" , "FlagsTooEarly" ,
"-Xwerror" ,
thisFile
};
if (jdk.javadoc.internal.tool.Main.execute(argarray) != 0 )
throw new Error("Javadoc encountered warnings or errors." );
}
/*
* The world ' s simplest doclet .
*/
public boolean run(DocletEnvironment root) {
return true ;
}
/*
* The following sets up the scenario for triggering the ( potential ) bug .
*/
C2 c;
static class C1 { }
static class C2 { }
@Override
public String getName() {
return "Test" ;
}
@Override
public Set<Option> getSupportedOptions() {
return Collections.emptySet();
}
@Override
public SourceVersion getSupportedSourceVersion() {
return SourceVersion.latest();
}
public void init(Locale locale, Reporter reporter) {
return ;
}
}
Messung V0.5 in Prozent C=96 H=89 G=92
¤ Dauer der Verarbeitung: 0.3 Sekunden
¤
*© Formatika GbR, Deutschland