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.");
}
}
});