Am 19.12.2012 18:37, schrieb Mark Wielaard: > On Wed, Dec 19, 2012 at 02:01:10PM +0100, Matthias Klose wrote: >> Currently gjavah only accepts -source 1.4 and lower, and errors out for any >> other value. Would it be reasonable to accept higher versions too? > > I think that should be fine for gjavah, I cannot think of something > in the bytecode that would impact jni/cni header generation. > > But your patch is for gjdoc. There I think there are source constructs > that might be a problem in newer versions. It should support some of > the new 1.5 source level features, but I am not sure if it handles > everything nor whether it handles any 1.6 and 1.7 extensions. > >> Index: classpath/tools/gnu/classpath/tools/gjdoc/Main.java >> =================================================================== >> --- classpath/tools/gnu/classpath/tools/gjdoc/Main.java (Revision >> 194604) >> +++ classpath/tools/gnu/classpath/tools/gjdoc/Main.java (Arbeitskopie) >> @@ -1339,10 +1310,13 @@ >> option_source = args[0]; >> if (!"1.2".equals(option_source) >> && !"1.3".equals(option_source) >> - && !"1.4".equals(option_source)) { >> + && !"1.4".equals(option_source) >> + && !"1.5".equals(option_source) >> + && !"1.6".equals(option_source) >> + && !"1.7".equals(option_source)) { > > If you really meant gjdoc I think it would be OK to try to accept it, > but maybe with a warning message that it is untested?
yes, I meant gjdoc. Here is an updated patch. Matthias * tools/gnu/classpath/tools/gjdoc/Main.java: Accept -source 1.5, 1.6, 1.7.
# DP: Let gjdoc accept -source 1.5|1.6|1.7. Addresses: #678945. --- a/src/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Main.java +++ b/src/libjava/classpath/tools/gnu/classpath/tools/gjdoc/Main.java @@ -1337,12 +1337,17 @@ void process(String[] args) { option_source = args[0]; - if (!"1.2".equals(option_source) + if ("1.5".equals(option_source) + || "1.6".equals(option_source) + || "1.7".equals(option_source)) { + System.err.println("WARNING: support for option -source " + option_source + " is experimental"); + } + else if (!"1.2".equals(option_source) && !"1.3".equals(option_source) && !"1.4".equals(option_source)) { - throw new RuntimeException("Only he following values are currently" - + " supported for option -source: 1.2, 1.3, 1.4."); + throw new RuntimeException("Only the following values are currently" + + " supported for option -source: 1.2, 1.3, 1.4; experimental: 1.5, 1.6, 1.7."); } } });