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

Reply via email to