Tue, 08 Oct 2013 14:59:46 -0700
Merge
src/share/classes/jdk/Supported.java | file | annotate | diff | comparison | revisions | |
test/tools/javac/generics/OverrideBridge.java | file | annotate | diff | comparison | revisions |
1.1 --- a/src/share/classes/com/sun/source/doctree/AttributeTree.java Wed Oct 02 13:26:54 2013 -0700 1.2 +++ b/src/share/classes/com/sun/source/doctree/AttributeTree.java Tue Oct 08 14:59:46 2013 -0700 1.3 @@ -33,9 +33,9 @@ 1.4 * 1.5 * @since 1.8 1.6 */ 1.7 -@jdk.Supported 1.8 +@jdk.Exported 1.9 public interface AttributeTree extends DocTree { 1.10 - @jdk.Supported 1.11 + @jdk.Exported 1.12 enum ValueKind { EMPTY, UNQUOTED, SINGLE, DOUBLE }; 1.13 1.14 Name getName();
2.1 --- a/src/share/classes/com/sun/source/doctree/AuthorTree.java Wed Oct 02 13:26:54 2013 -0700 2.2 +++ b/src/share/classes/com/sun/source/doctree/AuthorTree.java Tue Oct 08 14:59:46 2013 -0700 2.3 @@ -35,7 +35,7 @@ 2.4 * 2.5 * @since 1.8 2.6 */ 2.7 -@jdk.Supported 2.8 +@jdk.Exported 2.9 public interface AuthorTree extends BlockTagTree { 2.10 List<? extends DocTree> getName(); 2.11 }
3.1 --- a/src/share/classes/com/sun/source/doctree/BlockTagTree.java Wed Oct 02 13:26:54 2013 -0700 3.2 +++ b/src/share/classes/com/sun/source/doctree/BlockTagTree.java Tue Oct 08 14:59:46 2013 -0700 3.3 @@ -31,7 +31,7 @@ 3.4 * 3.5 * @since 1.8 3.6 */ 3.7 -@jdk.Supported 3.8 +@jdk.Exported 3.9 public interface BlockTagTree extends DocTree { 3.10 String getTagName(); 3.11 }
4.1 --- a/src/share/classes/com/sun/source/doctree/CommentTree.java Wed Oct 02 13:26:54 2013 -0700 4.2 +++ b/src/share/classes/com/sun/source/doctree/CommentTree.java Tue Oct 08 14:59:46 2013 -0700 4.3 @@ -33,7 +33,7 @@ 4.4 * 4.5 * @since 1.8 4.6 */ 4.7 -@jdk.Supported 4.8 +@jdk.Exported 4.9 public interface CommentTree extends DocTree { 4.10 String getBody(); 4.11 }
5.1 --- a/src/share/classes/com/sun/source/doctree/DeprecatedTree.java Wed Oct 02 13:26:54 2013 -0700 5.2 +++ b/src/share/classes/com/sun/source/doctree/DeprecatedTree.java Tue Oct 08 14:59:46 2013 -0700 5.3 @@ -35,7 +35,7 @@ 5.4 * 5.5 * @since 1.8 5.6 */ 5.7 -@jdk.Supported 5.8 +@jdk.Exported 5.9 public interface DeprecatedTree extends BlockTagTree { 5.10 List<? extends DocTree> getBody(); 5.11 }
6.1 --- a/src/share/classes/com/sun/source/doctree/DocCommentTree.java Wed Oct 02 13:26:54 2013 -0700 6.2 +++ b/src/share/classes/com/sun/source/doctree/DocCommentTree.java Tue Oct 08 14:59:46 2013 -0700 6.3 @@ -35,7 +35,7 @@ 6.4 * 6.5 * @since 1.8 6.6 */ 6.7 -@jdk.Supported 6.8 +@jdk.Exported 6.9 public interface DocCommentTree extends DocTree { 6.10 List<? extends DocTree> getFirstSentence(); 6.11 List<? extends DocTree> getBody();
7.1 --- a/src/share/classes/com/sun/source/doctree/DocRootTree.java Wed Oct 02 13:26:54 2013 -0700 7.2 +++ b/src/share/classes/com/sun/source/doctree/DocRootTree.java Tue Oct 08 14:59:46 2013 -0700 7.3 @@ -33,5 +33,5 @@ 7.4 * 7.5 * @since 1.8 7.6 */ 7.7 -@jdk.Supported 7.8 +@jdk.Exported 7.9 public interface DocRootTree extends InlineTagTree { }
8.1 --- a/src/share/classes/com/sun/source/doctree/DocTree.java Wed Oct 02 13:26:54 2013 -0700 8.2 +++ b/src/share/classes/com/sun/source/doctree/DocTree.java Tue Oct 08 14:59:46 2013 -0700 8.3 @@ -30,9 +30,9 @@ 8.4 * 8.5 * @since 1.8 8.6 */ 8.7 -@jdk.Supported 8.8 +@jdk.Exported 8.9 public interface DocTree { 8.10 - @jdk.Supported 8.11 + @jdk.Exported 8.12 enum Kind { 8.13 /** 8.14 * Used for instances of {@link AttributeTree}
9.1 --- a/src/share/classes/com/sun/source/doctree/DocTreeVisitor.java Wed Oct 02 13:26:54 2013 -0700 9.2 +++ b/src/share/classes/com/sun/source/doctree/DocTreeVisitor.java Tue Oct 08 14:59:46 2013 -0700 9.3 @@ -54,7 +54,7 @@ 9.4 * 9.5 * @since 1.8 9.6 */ 9.7 -@jdk.Supported 9.8 +@jdk.Exported 9.9 public interface DocTreeVisitor<R,P> { 9.10 R visitAttribute(AttributeTree node, P p); 9.11 R visitAuthor(AuthorTree node, P p);
10.1 --- a/src/share/classes/com/sun/source/doctree/EndElementTree.java Wed Oct 02 13:26:54 2013 -0700 10.2 +++ b/src/share/classes/com/sun/source/doctree/EndElementTree.java Tue Oct 08 14:59:46 2013 -0700 10.3 @@ -35,7 +35,7 @@ 10.4 * 10.5 * @since 1.8 10.6 */ 10.7 -@jdk.Supported 10.8 +@jdk.Exported 10.9 public interface EndElementTree extends DocTree { 10.10 Name getName(); 10.11 }
11.1 --- a/src/share/classes/com/sun/source/doctree/EntityTree.java Wed Oct 02 13:26:54 2013 -0700 11.2 +++ b/src/share/classes/com/sun/source/doctree/EntityTree.java Tue Oct 08 14:59:46 2013 -0700 11.3 @@ -36,7 +36,7 @@ 11.4 * 11.5 * @since 1.8 11.6 */ 11.7 -@jdk.Supported 11.8 +@jdk.Exported 11.9 public interface EntityTree extends DocTree { 11.10 Name getName(); 11.11 }
12.1 --- a/src/share/classes/com/sun/source/doctree/ErroneousTree.java Wed Oct 02 13:26:54 2013 -0700 12.2 +++ b/src/share/classes/com/sun/source/doctree/ErroneousTree.java Tue Oct 08 14:59:46 2013 -0700 12.3 @@ -32,7 +32,7 @@ 12.4 * 12.5 * @since 1.8 12.6 */ 12.7 -@jdk.Supported 12.8 +@jdk.Exported 12.9 public interface ErroneousTree extends TextTree { 12.10 /** 12.11 * Gets a diagnostic object giving details about
13.1 --- a/src/share/classes/com/sun/source/doctree/IdentifierTree.java Wed Oct 02 13:26:54 2013 -0700 13.2 +++ b/src/share/classes/com/sun/source/doctree/IdentifierTree.java Tue Oct 08 14:59:46 2013 -0700 13.3 @@ -35,7 +35,7 @@ 13.4 * 13.5 * @since 1.8 13.6 */ 13.7 -@jdk.Supported 13.8 +@jdk.Exported 13.9 public interface IdentifierTree extends DocTree { 13.10 Name getName(); 13.11 }
14.1 --- a/src/share/classes/com/sun/source/doctree/InheritDocTree.java Wed Oct 02 13:26:54 2013 -0700 14.2 +++ b/src/share/classes/com/sun/source/doctree/InheritDocTree.java Tue Oct 08 14:59:46 2013 -0700 14.3 @@ -34,5 +34,5 @@ 14.4 * 14.5 * @since 1.8 14.6 */ 14.7 -@jdk.Supported 14.8 +@jdk.Exported 14.9 public interface InheritDocTree extends InlineTagTree { }
15.1 --- a/src/share/classes/com/sun/source/doctree/InlineTagTree.java Wed Oct 02 13:26:54 2013 -0700 15.2 +++ b/src/share/classes/com/sun/source/doctree/InlineTagTree.java Tue Oct 08 14:59:46 2013 -0700 15.3 @@ -31,7 +31,7 @@ 15.4 * 15.5 * @since 1.8 15.6 */ 15.7 -@jdk.Supported 15.8 +@jdk.Exported 15.9 public interface InlineTagTree extends DocTree { 15.10 String getTagName(); 15.11 }
16.1 --- a/src/share/classes/com/sun/source/doctree/LinkTree.java Wed Oct 02 13:26:54 2013 -0700 16.2 +++ b/src/share/classes/com/sun/source/doctree/LinkTree.java Tue Oct 08 14:59:46 2013 -0700 16.3 @@ -36,7 +36,7 @@ 16.4 * 16.5 * @since 1.8 16.6 */ 16.7 -@jdk.Supported 16.8 +@jdk.Exported 16.9 public interface LinkTree extends InlineTagTree { 16.10 ReferenceTree getReference(); 16.11 List<? extends DocTree> getLabel();
17.1 --- a/src/share/classes/com/sun/source/doctree/LiteralTree.java Wed Oct 02 13:26:54 2013 -0700 17.2 +++ b/src/share/classes/com/sun/source/doctree/LiteralTree.java Tue Oct 08 14:59:46 2013 -0700 17.3 @@ -34,7 +34,7 @@ 17.4 * 17.5 * @since 1.8 17.6 */ 17.7 -@jdk.Supported 17.8 +@jdk.Exported 17.9 public interface LiteralTree extends InlineTagTree { 17.10 TextTree getBody(); 17.11 }
18.1 --- a/src/share/classes/com/sun/source/doctree/ParamTree.java Wed Oct 02 13:26:54 2013 -0700 18.2 +++ b/src/share/classes/com/sun/source/doctree/ParamTree.java Tue Oct 08 14:59:46 2013 -0700 18.3 @@ -35,7 +35,7 @@ 18.4 * 18.5 * @since 1.8 18.6 */ 18.7 -@jdk.Supported 18.8 +@jdk.Exported 18.9 public interface ParamTree extends BlockTagTree { 18.10 boolean isTypeParameter(); 18.11 IdentifierTree getName();
19.1 --- a/src/share/classes/com/sun/source/doctree/ReferenceTree.java Wed Oct 02 13:26:54 2013 -0700 19.2 +++ b/src/share/classes/com/sun/source/doctree/ReferenceTree.java Tue Oct 08 14:59:46 2013 -0700 19.3 @@ -33,7 +33,7 @@ 19.4 * 19.5 * @since 1.8 19.6 */ 19.7 -@jdk.Supported 19.8 +@jdk.Exported 19.9 public interface ReferenceTree extends DocTree { 19.10 String getSignature(); 19.11 }
20.1 --- a/src/share/classes/com/sun/source/doctree/ReturnTree.java Wed Oct 02 13:26:54 2013 -0700 20.2 +++ b/src/share/classes/com/sun/source/doctree/ReturnTree.java Tue Oct 08 14:59:46 2013 -0700 20.3 @@ -35,7 +35,7 @@ 20.4 * 20.5 * @since 1.8 20.6 */ 20.7 -@jdk.Supported 20.8 +@jdk.Exported 20.9 public interface ReturnTree extends BlockTagTree { 20.10 List<? extends DocTree> getDescription(); 20.11 }
21.1 --- a/src/share/classes/com/sun/source/doctree/SeeTree.java Wed Oct 02 13:26:54 2013 -0700 21.2 +++ b/src/share/classes/com/sun/source/doctree/SeeTree.java Tue Oct 08 14:59:46 2013 -0700 21.3 @@ -38,7 +38,7 @@ 21.4 * 21.5 * @since 1.8 21.6 */ 21.7 -@jdk.Supported 21.8 +@jdk.Exported 21.9 public interface SeeTree extends BlockTagTree { 21.10 List<? extends DocTree> getReference(); 21.11 }
22.1 --- a/src/share/classes/com/sun/source/doctree/SerialDataTree.java Wed Oct 02 13:26:54 2013 -0700 22.2 +++ b/src/share/classes/com/sun/source/doctree/SerialDataTree.java Tue Oct 08 14:59:46 2013 -0700 22.3 @@ -35,7 +35,7 @@ 22.4 * 22.5 * @since 1.8 22.6 */ 22.7 -@jdk.Supported 22.8 +@jdk.Exported 22.9 public interface SerialDataTree extends BlockTagTree { 22.10 List<? extends DocTree> getDescription(); 22.11 }
23.1 --- a/src/share/classes/com/sun/source/doctree/SerialFieldTree.java Wed Oct 02 13:26:54 2013 -0700 23.2 +++ b/src/share/classes/com/sun/source/doctree/SerialFieldTree.java Tue Oct 08 14:59:46 2013 -0700 23.3 @@ -35,7 +35,7 @@ 23.4 * 23.5 * @since 1.8 23.6 */ 23.7 -@jdk.Supported 23.8 +@jdk.Exported 23.9 public interface SerialFieldTree extends BlockTagTree { 23.10 IdentifierTree getName(); 23.11 ReferenceTree getType();
24.1 --- a/src/share/classes/com/sun/source/doctree/SerialTree.java Wed Oct 02 13:26:54 2013 -0700 24.2 +++ b/src/share/classes/com/sun/source/doctree/SerialTree.java Tue Oct 08 14:59:46 2013 -0700 24.3 @@ -35,7 +35,7 @@ 24.4 * 24.5 * @since 1.8 24.6 */ 24.7 -@jdk.Supported 24.8 +@jdk.Exported 24.9 public interface SerialTree extends BlockTagTree { 24.10 List<? extends DocTree> getDescription(); 24.11 }
25.1 --- a/src/share/classes/com/sun/source/doctree/SinceTree.java Wed Oct 02 13:26:54 2013 -0700 25.2 +++ b/src/share/classes/com/sun/source/doctree/SinceTree.java Tue Oct 08 14:59:46 2013 -0700 25.3 @@ -35,7 +35,7 @@ 25.4 * 25.5 * @since 1.8 25.6 */ 25.7 -@jdk.Supported 25.8 +@jdk.Exported 25.9 public interface SinceTree extends BlockTagTree { 25.10 List<? extends DocTree> getBody(); 25.11 }
26.1 --- a/src/share/classes/com/sun/source/doctree/StartElementTree.java Wed Oct 02 13:26:54 2013 -0700 26.2 +++ b/src/share/classes/com/sun/source/doctree/StartElementTree.java Tue Oct 08 14:59:46 2013 -0700 26.3 @@ -36,7 +36,7 @@ 26.4 * 26.5 * @since 1.8 26.6 */ 26.7 -@jdk.Supported 26.8 +@jdk.Exported 26.9 public interface StartElementTree extends DocTree { 26.10 Name getName(); 26.11 List<? extends DocTree> getAttributes();
27.1 --- a/src/share/classes/com/sun/source/doctree/TextTree.java Wed Oct 02 13:26:54 2013 -0700 27.2 +++ b/src/share/classes/com/sun/source/doctree/TextTree.java Tue Oct 08 14:59:46 2013 -0700 27.3 @@ -30,7 +30,7 @@ 27.4 * 27.5 * @since 1.8 27.6 */ 27.7 -@jdk.Supported 27.8 +@jdk.Exported 27.9 public interface TextTree extends DocTree { 27.10 String getBody(); 27.11 }
28.1 --- a/src/share/classes/com/sun/source/doctree/ThrowsTree.java Wed Oct 02 13:26:54 2013 -0700 28.2 +++ b/src/share/classes/com/sun/source/doctree/ThrowsTree.java Tue Oct 08 14:59:46 2013 -0700 28.3 @@ -38,7 +38,7 @@ 28.4 * 28.5 * @since 1.8 28.6 */ 28.7 -@jdk.Supported 28.8 +@jdk.Exported 28.9 public interface ThrowsTree extends BlockTagTree { 28.10 ReferenceTree getExceptionName(); 28.11 List<? extends DocTree> getDescription();
29.1 --- a/src/share/classes/com/sun/source/doctree/UnknownBlockTagTree.java Wed Oct 02 13:26:54 2013 -0700 29.2 +++ b/src/share/classes/com/sun/source/doctree/UnknownBlockTagTree.java Tue Oct 08 14:59:46 2013 -0700 29.3 @@ -35,7 +35,7 @@ 29.4 * @since 1.8 29.5 * 29.6 */ 29.7 -@jdk.Supported 29.8 +@jdk.Exported 29.9 public interface UnknownBlockTagTree extends BlockTagTree { 29.10 List<? extends DocTree> getContent(); 29.11 }
30.1 --- a/src/share/classes/com/sun/source/doctree/UnknownInlineTagTree.java Wed Oct 02 13:26:54 2013 -0700 30.2 +++ b/src/share/classes/com/sun/source/doctree/UnknownInlineTagTree.java Tue Oct 08 14:59:46 2013 -0700 30.3 @@ -35,7 +35,7 @@ 30.4 * @since 1.8 30.5 * 30.6 */ 30.7 -@jdk.Supported 30.8 +@jdk.Exported 30.9 public interface UnknownInlineTagTree extends InlineTagTree { 30.10 List<? extends DocTree> getContent(); 30.11 }
31.1 --- a/src/share/classes/com/sun/source/doctree/ValueTree.java Wed Oct 02 13:26:54 2013 -0700 31.2 +++ b/src/share/classes/com/sun/source/doctree/ValueTree.java Tue Oct 08 14:59:46 2013 -0700 31.3 @@ -33,7 +33,7 @@ 31.4 * 31.5 * @since 1.8 31.6 */ 31.7 -@jdk.Supported 31.8 +@jdk.Exported 31.9 public interface ValueTree extends InlineTagTree { 31.10 ReferenceTree getReference(); 31.11 }
32.1 --- a/src/share/classes/com/sun/source/doctree/VersionTree.java Wed Oct 02 13:26:54 2013 -0700 32.2 +++ b/src/share/classes/com/sun/source/doctree/VersionTree.java Tue Oct 08 14:59:46 2013 -0700 32.3 @@ -36,7 +36,7 @@ 32.4 * 32.5 * @since 1.8 32.6 */ 32.7 -@jdk.Supported 32.8 +@jdk.Exported 32.9 public interface VersionTree extends BlockTagTree { 32.10 List<? extends DocTree> getBody(); 32.11 }
33.1 --- a/src/share/classes/com/sun/source/doctree/package-info.java Wed Oct 02 13:26:54 2013 -0700 33.2 +++ b/src/share/classes/com/sun/source/doctree/package-info.java Tue Oct 08 14:59:46 2013 -0700 33.3 @@ -31,5 +31,5 @@ 33.4 * @since 1.8 33.5 * @see <a href="http://download.oracle.com/javase/6/docs/technotes/tools/solaris/javadoc.html#javadoctags">http://download.oracle.com/javase/6/docs/technotes/tools/solaris/javadoc.html#javadoctags</a> 33.6 */ 33.7 -@jdk.Supported 33.8 +@jdk.Exported 33.9 package com.sun.source.doctree;
34.1 --- a/src/share/classes/com/sun/source/tree/AnnotatedTypeTree.java Wed Oct 02 13:26:54 2013 -0700 34.2 +++ b/src/share/classes/com/sun/source/tree/AnnotatedTypeTree.java Tue Oct 08 14:59:46 2013 -0700 34.3 @@ -41,7 +41,7 @@ 34.4 * @author Mahmood Ali 34.5 * @since 1.8 34.6 */ 34.7 -@jdk.Supported 34.8 +@jdk.Exported 34.9 public interface AnnotatedTypeTree extends ExpressionTree { 34.10 List<? extends AnnotationTree> getAnnotations(); 34.11 ExpressionTree getUnderlyingType();
35.1 --- a/src/share/classes/com/sun/source/tree/AnnotationTree.java Wed Oct 02 13:26:54 2013 -0700 35.2 +++ b/src/share/classes/com/sun/source/tree/AnnotationTree.java Tue Oct 08 14:59:46 2013 -0700 35.3 @@ -42,7 +42,7 @@ 35.4 * @author Jonathan Gibbons 35.5 * @since 1.6 35.6 */ 35.7 -@jdk.Supported 35.8 +@jdk.Exported 35.9 public interface AnnotationTree extends ExpressionTree { 35.10 Tree getAnnotationType(); 35.11 List<? extends ExpressionTree> getArguments();
36.1 --- a/src/share/classes/com/sun/source/tree/ArrayAccessTree.java Wed Oct 02 13:26:54 2013 -0700 36.2 +++ b/src/share/classes/com/sun/source/tree/ArrayAccessTree.java Tue Oct 08 14:59:46 2013 -0700 36.3 @@ -39,7 +39,7 @@ 36.4 * @author Jonathan Gibbons 36.5 * @since 1.6 36.6 */ 36.7 -@jdk.Supported 36.8 +@jdk.Exported 36.9 public interface ArrayAccessTree extends ExpressionTree { 36.10 ExpressionTree getExpression(); 36.11 ExpressionTree getIndex();
37.1 --- a/src/share/classes/com/sun/source/tree/ArrayTypeTree.java Wed Oct 02 13:26:54 2013 -0700 37.2 +++ b/src/share/classes/com/sun/source/tree/ArrayTypeTree.java Tue Oct 08 14:59:46 2013 -0700 37.3 @@ -39,7 +39,7 @@ 37.4 * @author Jonathan Gibbons 37.5 * @since 1.6 37.6 */ 37.7 -@jdk.Supported 37.8 +@jdk.Exported 37.9 public interface ArrayTypeTree extends Tree { 37.10 Tree getType(); 37.11 }
38.1 --- a/src/share/classes/com/sun/source/tree/AssertTree.java Wed Oct 02 13:26:54 2013 -0700 38.2 +++ b/src/share/classes/com/sun/source/tree/AssertTree.java Tue Oct 08 14:59:46 2013 -0700 38.3 @@ -41,7 +41,7 @@ 38.4 * @author Jonathan Gibbons 38.5 * @since 1.6 38.6 */ 38.7 -@jdk.Supported 38.8 +@jdk.Exported 38.9 public interface AssertTree extends StatementTree { 38.10 ExpressionTree getCondition(); 38.11 ExpressionTree getDetail();
39.1 --- a/src/share/classes/com/sun/source/tree/AssignmentTree.java Wed Oct 02 13:26:54 2013 -0700 39.2 +++ b/src/share/classes/com/sun/source/tree/AssignmentTree.java Tue Oct 08 14:59:46 2013 -0700 39.3 @@ -39,7 +39,7 @@ 39.4 * @author Jonathan Gibbons 39.5 * @since 1.6 39.6 */ 39.7 -@jdk.Supported 39.8 +@jdk.Exported 39.9 public interface AssignmentTree extends ExpressionTree { 39.10 ExpressionTree getVariable(); 39.11 ExpressionTree getExpression();
40.1 --- a/src/share/classes/com/sun/source/tree/BinaryTree.java Wed Oct 02 13:26:54 2013 -0700 40.2 +++ b/src/share/classes/com/sun/source/tree/BinaryTree.java Tue Oct 08 14:59:46 2013 -0700 40.3 @@ -40,7 +40,7 @@ 40.4 * @author Jonathan Gibbons 40.5 * @since 1.6 40.6 */ 40.7 -@jdk.Supported 40.8 +@jdk.Exported 40.9 public interface BinaryTree extends ExpressionTree { 40.10 ExpressionTree getLeftOperand(); 40.11 ExpressionTree getRightOperand();
41.1 --- a/src/share/classes/com/sun/source/tree/BlockTree.java Wed Oct 02 13:26:54 2013 -0700 41.2 +++ b/src/share/classes/com/sun/source/tree/BlockTree.java Tue Oct 08 14:59:46 2013 -0700 41.3 @@ -45,7 +45,7 @@ 41.4 * @author Jonathan Gibbons 41.5 * @since 1.6 41.6 */ 41.7 -@jdk.Supported 41.8 +@jdk.Exported 41.9 public interface BlockTree extends StatementTree { 41.10 boolean isStatic(); 41.11 List<? extends StatementTree> getStatements();
42.1 --- a/src/share/classes/com/sun/source/tree/BreakTree.java Wed Oct 02 13:26:54 2013 -0700 42.2 +++ b/src/share/classes/com/sun/source/tree/BreakTree.java Tue Oct 08 14:59:46 2013 -0700 42.3 @@ -43,7 +43,7 @@ 42.4 * @author Jonathan Gibbons 42.5 * @since 1.6 42.6 */ 42.7 -@jdk.Supported 42.8 +@jdk.Exported 42.9 public interface BreakTree extends StatementTree { 42.10 Name getLabel(); 42.11 }
43.1 --- a/src/share/classes/com/sun/source/tree/CaseTree.java Wed Oct 02 13:26:54 2013 -0700 43.2 +++ b/src/share/classes/com/sun/source/tree/CaseTree.java Tue Oct 08 14:59:46 2013 -0700 43.3 @@ -45,7 +45,7 @@ 43.4 * @author Jonathan Gibbons 43.5 * @since 1.6 43.6 */ 43.7 -@jdk.Supported 43.8 +@jdk.Exported 43.9 public interface CaseTree extends Tree { 43.10 /** 43.11 * @return null if and only if this Case is {@code default:}
44.1 --- a/src/share/classes/com/sun/source/tree/CatchTree.java Wed Oct 02 13:26:54 2013 -0700 44.2 +++ b/src/share/classes/com/sun/source/tree/CatchTree.java Tue Oct 08 14:59:46 2013 -0700 44.3 @@ -40,7 +40,7 @@ 44.4 * @author Jonathan Gibbons 44.5 * @since 1.6 44.6 */ 44.7 -@jdk.Supported 44.8 +@jdk.Exported 44.9 public interface CatchTree extends Tree { 44.10 VariableTree getParameter(); 44.11 BlockTree getBlock();
45.1 --- a/src/share/classes/com/sun/source/tree/ClassTree.java Wed Oct 02 13:26:54 2013 -0700 45.2 +++ b/src/share/classes/com/sun/source/tree/ClassTree.java Tue Oct 08 14:59:46 2013 -0700 45.3 @@ -48,7 +48,7 @@ 45.4 * @author Jonathan Gibbons 45.5 * @since 1.6 45.6 */ 45.7 -@jdk.Supported 45.8 +@jdk.Exported 45.9 public interface ClassTree extends StatementTree { 45.10 ModifiersTree getModifiers(); 45.11 Name getSimpleName();
46.1 --- a/src/share/classes/com/sun/source/tree/CompilationUnitTree.java Wed Oct 02 13:26:54 2013 -0700 46.2 +++ b/src/share/classes/com/sun/source/tree/CompilationUnitTree.java Tue Oct 08 14:59:46 2013 -0700 46.3 @@ -37,7 +37,7 @@ 46.4 * @author Peter von der Ahé 46.5 * @since 1.6 46.6 */ 46.7 -@jdk.Supported 46.8 +@jdk.Exported 46.9 public interface CompilationUnitTree extends Tree { 46.10 List<? extends AnnotationTree> getPackageAnnotations(); 46.11 ExpressionTree getPackageName();
47.1 --- a/src/share/classes/com/sun/source/tree/CompoundAssignmentTree.java Wed Oct 02 13:26:54 2013 -0700 47.2 +++ b/src/share/classes/com/sun/source/tree/CompoundAssignmentTree.java Tue Oct 08 14:59:46 2013 -0700 47.3 @@ -40,7 +40,7 @@ 47.4 * @author Jonathan Gibbons 47.5 * @since 1.6 47.6 */ 47.7 -@jdk.Supported 47.8 +@jdk.Exported 47.9 public interface CompoundAssignmentTree extends ExpressionTree { 47.10 ExpressionTree getVariable(); 47.11 ExpressionTree getExpression();
48.1 --- a/src/share/classes/com/sun/source/tree/ConditionalExpressionTree.java Wed Oct 02 13:26:54 2013 -0700 48.2 +++ b/src/share/classes/com/sun/source/tree/ConditionalExpressionTree.java Tue Oct 08 14:59:46 2013 -0700 48.3 @@ -39,7 +39,7 @@ 48.4 * @author Jonathan Gibbons 48.5 * @since 1.6 48.6 */ 48.7 -@jdk.Supported 48.8 +@jdk.Exported 48.9 public interface ConditionalExpressionTree extends ExpressionTree { 48.10 ExpressionTree getCondition(); 48.11 ExpressionTree getTrueExpression();
49.1 --- a/src/share/classes/com/sun/source/tree/ContinueTree.java Wed Oct 02 13:26:54 2013 -0700 49.2 +++ b/src/share/classes/com/sun/source/tree/ContinueTree.java Tue Oct 08 14:59:46 2013 -0700 49.3 @@ -42,7 +42,7 @@ 49.4 * @author Jonathan Gibbons 49.5 * @since 1.6 49.6 */ 49.7 -@jdk.Supported 49.8 +@jdk.Exported 49.9 public interface ContinueTree extends StatementTree { 49.10 Name getLabel(); 49.11 }
50.1 --- a/src/share/classes/com/sun/source/tree/DoWhileLoopTree.java Wed Oct 02 13:26:54 2013 -0700 50.2 +++ b/src/share/classes/com/sun/source/tree/DoWhileLoopTree.java Tue Oct 08 14:59:46 2013 -0700 50.3 @@ -41,7 +41,7 @@ 50.4 * @author Jonathan Gibbons 50.5 * @since 1.6 50.6 */ 50.7 -@jdk.Supported 50.8 +@jdk.Exported 50.9 public interface DoWhileLoopTree extends StatementTree { 50.10 ExpressionTree getCondition(); 50.11 StatementTree getStatement();
51.1 --- a/src/share/classes/com/sun/source/tree/EmptyStatementTree.java Wed Oct 02 13:26:54 2013 -0700 51.2 +++ b/src/share/classes/com/sun/source/tree/EmptyStatementTree.java Tue Oct 08 14:59:46 2013 -0700 51.3 @@ -39,5 +39,5 @@ 51.4 * @author Jonathan Gibbons 51.5 * @since 1.6 51.6 */ 51.7 -@jdk.Supported 51.8 +@jdk.Exported 51.9 public interface EmptyStatementTree extends StatementTree {}
52.1 --- a/src/share/classes/com/sun/source/tree/EnhancedForLoopTree.java Wed Oct 02 13:26:54 2013 -0700 52.2 +++ b/src/share/classes/com/sun/source/tree/EnhancedForLoopTree.java Tue Oct 08 14:59:46 2013 -0700 52.3 @@ -40,7 +40,7 @@ 52.4 * @author Jonathan Gibbons 52.5 * @since 1.6 52.6 */ 52.7 -@jdk.Supported 52.8 +@jdk.Exported 52.9 public interface EnhancedForLoopTree extends StatementTree { 52.10 VariableTree getVariable(); 52.11 ExpressionTree getExpression();
53.1 --- a/src/share/classes/com/sun/source/tree/ErroneousTree.java Wed Oct 02 13:26:54 2013 -0700 53.2 +++ b/src/share/classes/com/sun/source/tree/ErroneousTree.java Tue Oct 08 14:59:46 2013 -0700 53.3 @@ -34,7 +34,7 @@ 53.4 * @author Jonathan Gibbons 53.5 * @since 1.6 53.6 */ 53.7 -@jdk.Supported 53.8 +@jdk.Exported 53.9 public interface ErroneousTree extends ExpressionTree { 53.10 List<? extends Tree> getErrorTrees(); 53.11 }
54.1 --- a/src/share/classes/com/sun/source/tree/ExpressionStatementTree.java Wed Oct 02 13:26:54 2013 -0700 54.2 +++ b/src/share/classes/com/sun/source/tree/ExpressionStatementTree.java Tue Oct 08 14:59:46 2013 -0700 54.3 @@ -39,7 +39,7 @@ 54.4 * @author Jonathan Gibbons 54.5 * @since 1.6 54.6 */ 54.7 -@jdk.Supported 54.8 +@jdk.Exported 54.9 public interface ExpressionStatementTree extends StatementTree { 54.10 ExpressionTree getExpression(); 54.11 }
55.1 --- a/src/share/classes/com/sun/source/tree/ExpressionTree.java Wed Oct 02 13:26:54 2013 -0700 55.2 +++ b/src/share/classes/com/sun/source/tree/ExpressionTree.java Tue Oct 08 14:59:46 2013 -0700 55.3 @@ -35,5 +35,5 @@ 55.4 * @author Jonathan Gibbons 55.5 * @since 1.6 55.6 */ 55.7 -@jdk.Supported 55.8 +@jdk.Exported 55.9 public interface ExpressionTree extends Tree {}
56.1 --- a/src/share/classes/com/sun/source/tree/ForLoopTree.java Wed Oct 02 13:26:54 2013 -0700 56.2 +++ b/src/share/classes/com/sun/source/tree/ForLoopTree.java Tue Oct 08 14:59:46 2013 -0700 56.3 @@ -42,7 +42,7 @@ 56.4 * @author Jonathan Gibbons 56.5 * @since 1.6 56.6 */ 56.7 -@jdk.Supported 56.8 +@jdk.Exported 56.9 public interface ForLoopTree extends StatementTree { 56.10 List<? extends StatementTree> getInitializer(); 56.11 ExpressionTree getCondition();
57.1 --- a/src/share/classes/com/sun/source/tree/IdentifierTree.java Wed Oct 02 13:26:54 2013 -0700 57.2 +++ b/src/share/classes/com/sun/source/tree/IdentifierTree.java Tue Oct 08 14:59:46 2013 -0700 57.3 @@ -41,7 +41,7 @@ 57.4 * @author Jonathan Gibbons 57.5 * @since 1.6 57.6 */ 57.7 -@jdk.Supported 57.8 +@jdk.Exported 57.9 public interface IdentifierTree extends ExpressionTree { 57.10 Name getName(); 57.11 }
58.1 --- a/src/share/classes/com/sun/source/tree/IfTree.java Wed Oct 02 13:26:54 2013 -0700 58.2 +++ b/src/share/classes/com/sun/source/tree/IfTree.java Tue Oct 08 14:59:46 2013 -0700 58.3 @@ -45,7 +45,7 @@ 58.4 * @author Jonathan Gibbons 58.5 * @since 1.6 58.6 */ 58.7 -@jdk.Supported 58.8 +@jdk.Exported 58.9 public interface IfTree extends StatementTree { 58.10 ExpressionTree getCondition(); 58.11 StatementTree getThenStatement();
59.1 --- a/src/share/classes/com/sun/source/tree/ImportTree.java Wed Oct 02 13:26:54 2013 -0700 59.2 +++ b/src/share/classes/com/sun/source/tree/ImportTree.java Tue Oct 08 14:59:46 2013 -0700 59.3 @@ -41,7 +41,7 @@ 59.4 * @author Jonathan Gibbons 59.5 * @since 1.6 59.6 */ 59.7 -@jdk.Supported 59.8 +@jdk.Exported 59.9 public interface ImportTree extends Tree { 59.10 boolean isStatic(); 59.11 /**
60.1 --- a/src/share/classes/com/sun/source/tree/InstanceOfTree.java Wed Oct 02 13:26:54 2013 -0700 60.2 +++ b/src/share/classes/com/sun/source/tree/InstanceOfTree.java Tue Oct 08 14:59:46 2013 -0700 60.3 @@ -39,7 +39,7 @@ 60.4 * @author Jonathan Gibbons 60.5 * @since 1.6 60.6 */ 60.7 -@jdk.Supported 60.8 +@jdk.Exported 60.9 public interface InstanceOfTree extends ExpressionTree { 60.10 ExpressionTree getExpression(); 60.11 Tree getType();
61.1 --- a/src/share/classes/com/sun/source/tree/IntersectionTypeTree.java Wed Oct 02 13:26:54 2013 -0700 61.2 +++ b/src/share/classes/com/sun/source/tree/IntersectionTypeTree.java Tue Oct 08 14:59:46 2013 -0700 61.3 @@ -34,7 +34,7 @@ 61.4 * 61.5 * @since 1.8 61.6 */ 61.7 -@jdk.Supported 61.8 +@jdk.Exported 61.9 public interface IntersectionTypeTree extends Tree { 61.10 List<? extends Tree> getBounds(); 61.11 }
62.1 --- a/src/share/classes/com/sun/source/tree/LabeledStatementTree.java Wed Oct 02 13:26:54 2013 -0700 62.2 +++ b/src/share/classes/com/sun/source/tree/LabeledStatementTree.java Tue Oct 08 14:59:46 2013 -0700 62.3 @@ -41,7 +41,7 @@ 62.4 * @author Jonathan Gibbons 62.5 * @since 1.6 62.6 */ 62.7 -@jdk.Supported 62.8 +@jdk.Exported 62.9 public interface LabeledStatementTree extends StatementTree { 62.10 Name getLabel(); 62.11 StatementTree getStatement();
63.1 --- a/src/share/classes/com/sun/source/tree/LambdaExpressionTree.java Wed Oct 02 13:26:54 2013 -0700 63.2 +++ b/src/share/classes/com/sun/source/tree/LambdaExpressionTree.java Tue Oct 08 14:59:46 2013 -0700 63.3 @@ -37,14 +37,14 @@ 63.4 * (x,y)-> { return x + y; } 63.5 * }</pre> 63.6 */ 63.7 -@jdk.Supported 63.8 +@jdk.Exported 63.9 public interface LambdaExpressionTree extends ExpressionTree { 63.10 63.11 /** 63.12 * Lambda expressions come in two forms: (i) expression lambdas, whose body 63.13 * is an expression, and (ii) statement lambdas, whose body is a block 63.14 */ 63.15 - @jdk.Supported 63.16 + @jdk.Exported 63.17 public enum BodyKind { 63.18 /** enum constant for expression lambdas */ 63.19 EXPRESSION,
64.1 --- a/src/share/classes/com/sun/source/tree/LineMap.java Wed Oct 02 13:26:54 2013 -0700 64.2 +++ b/src/share/classes/com/sun/source/tree/LineMap.java Tue Oct 08 14:59:46 2013 -0700 64.3 @@ -31,7 +31,7 @@ 64.4 * 64.5 * @since 1.6 64.6 */ 64.7 -@jdk.Supported 64.8 +@jdk.Exported 64.9 public interface LineMap { 64.10 /** 64.11 * Find the start position of a line.
65.1 --- a/src/share/classes/com/sun/source/tree/LiteralTree.java Wed Oct 02 13:26:54 2013 -0700 65.2 +++ b/src/share/classes/com/sun/source/tree/LiteralTree.java Tue Oct 08 14:59:46 2013 -0700 65.3 @@ -40,7 +40,7 @@ 65.4 * @author Jonathan Gibbons 65.5 * @since 1.6 65.6 */ 65.7 -@jdk.Supported 65.8 +@jdk.Exported 65.9 public interface LiteralTree extends ExpressionTree { 65.10 Object getValue(); 65.11 }
66.1 --- a/src/share/classes/com/sun/source/tree/MemberReferenceTree.java Wed Oct 02 13:26:54 2013 -0700 66.2 +++ b/src/share/classes/com/sun/source/tree/MemberReferenceTree.java Tue Oct 08 14:59:46 2013 -0700 66.3 @@ -39,14 +39,14 @@ 66.4 * 66.5 * @since 1.8 66.6 */ 66.7 -@jdk.Supported 66.8 +@jdk.Exported 66.9 public interface MemberReferenceTree extends ExpressionTree { 66.10 66.11 /** 66.12 * There are two kinds of member references: (i) method references and 66.13 * (ii) constructor references 66.14 */ 66.15 - @jdk.Supported 66.16 + @jdk.Exported 66.17 public enum ReferenceMode { 66.18 /** enum constant for method references */ 66.19 INVOKE,
67.1 --- a/src/share/classes/com/sun/source/tree/MemberSelectTree.java Wed Oct 02 13:26:54 2013 -0700 67.2 +++ b/src/share/classes/com/sun/source/tree/MemberSelectTree.java Tue Oct 08 14:59:46 2013 -0700 67.3 @@ -41,7 +41,7 @@ 67.4 * @author Jonathan Gibbons 67.5 * @since 1.6 67.6 */ 67.7 -@jdk.Supported 67.8 +@jdk.Exported 67.9 public interface MemberSelectTree extends ExpressionTree { 67.10 ExpressionTree getExpression(); 67.11 Name getIdentifier();
68.1 --- a/src/share/classes/com/sun/source/tree/MethodInvocationTree.java Wed Oct 02 13:26:54 2013 -0700 68.2 +++ b/src/share/classes/com/sun/source/tree/MethodInvocationTree.java Tue Oct 08 14:59:46 2013 -0700 68.3 @@ -43,7 +43,7 @@ 68.4 * @author Jonathan Gibbons 68.5 * @since 1.6 68.6 */ 68.7 -@jdk.Supported 68.8 +@jdk.Exported 68.9 public interface MethodInvocationTree extends ExpressionTree { 68.10 List<? extends Tree> getTypeArguments(); 68.11 ExpressionTree getMethodSelect();
69.1 --- a/src/share/classes/com/sun/source/tree/MethodTree.java Wed Oct 02 13:26:54 2013 -0700 69.2 +++ b/src/share/classes/com/sun/source/tree/MethodTree.java Tue Oct 08 14:59:46 2013 -0700 69.3 @@ -46,7 +46,7 @@ 69.4 * @author Jonathan Gibbons 69.5 * @since 1.6 69.6 */ 69.7 -@jdk.Supported 69.8 +@jdk.Exported 69.9 public interface MethodTree extends Tree { 69.10 ModifiersTree getModifiers(); 69.11 Name getName();
70.1 --- a/src/share/classes/com/sun/source/tree/ModifiersTree.java Wed Oct 02 13:26:54 2013 -0700 70.2 +++ b/src/share/classes/com/sun/source/tree/ModifiersTree.java Tue Oct 08 14:59:46 2013 -0700 70.3 @@ -45,7 +45,7 @@ 70.4 * @author Jonathan Gibbons 70.5 * @since 1.6 70.6 */ 70.7 -@jdk.Supported 70.8 +@jdk.Exported 70.9 public interface ModifiersTree extends Tree { 70.10 Set<Modifier> getFlags(); 70.11 List<? extends AnnotationTree> getAnnotations();
71.1 --- a/src/share/classes/com/sun/source/tree/NewArrayTree.java Wed Oct 02 13:26:54 2013 -0700 71.2 +++ b/src/share/classes/com/sun/source/tree/NewArrayTree.java Tue Oct 08 14:59:46 2013 -0700 71.3 @@ -43,7 +43,7 @@ 71.4 * @author Jonathan Gibbons 71.5 * @since 1.6 71.6 */ 71.7 -@jdk.Supported 71.8 +@jdk.Exported 71.9 public interface NewArrayTree extends ExpressionTree { 71.10 Tree getType(); 71.11 List<? extends ExpressionTree> getDimensions();
72.1 --- a/src/share/classes/com/sun/source/tree/NewClassTree.java Wed Oct 02 13:26:54 2013 -0700 72.2 +++ b/src/share/classes/com/sun/source/tree/NewClassTree.java Tue Oct 08 14:59:46 2013 -0700 72.3 @@ -48,7 +48,7 @@ 72.4 * @author Jonathan Gibbons 72.5 * @since 1.6 72.6 */ 72.7 -@jdk.Supported 72.8 +@jdk.Exported 72.9 public interface NewClassTree extends ExpressionTree { 72.10 ExpressionTree getEnclosingExpression(); 72.11 List<? extends Tree> getTypeArguments();
73.1 --- a/src/share/classes/com/sun/source/tree/ParameterizedTypeTree.java Wed Oct 02 13:26:54 2013 -0700 73.2 +++ b/src/share/classes/com/sun/source/tree/ParameterizedTypeTree.java Tue Oct 08 14:59:46 2013 -0700 73.3 @@ -41,7 +41,7 @@ 73.4 * @author Jonathan Gibbons 73.5 * @since 1.6 73.6 */ 73.7 -@jdk.Supported 73.8 +@jdk.Exported 73.9 public interface ParameterizedTypeTree extends Tree { 73.10 Tree getType(); 73.11 List<? extends Tree> getTypeArguments();
74.1 --- a/src/share/classes/com/sun/source/tree/ParenthesizedTree.java Wed Oct 02 13:26:54 2013 -0700 74.2 +++ b/src/share/classes/com/sun/source/tree/ParenthesizedTree.java Tue Oct 08 14:59:46 2013 -0700 74.3 @@ -40,7 +40,7 @@ 74.4 * @author Jonathan Gibbons 74.5 * @since 1.6 74.6 */ 74.7 -@jdk.Supported 74.8 +@jdk.Exported 74.9 public interface ParenthesizedTree extends ExpressionTree { 74.10 ExpressionTree getExpression(); 74.11 }
75.1 --- a/src/share/classes/com/sun/source/tree/PrimitiveTypeTree.java Wed Oct 02 13:26:54 2013 -0700 75.2 +++ b/src/share/classes/com/sun/source/tree/PrimitiveTypeTree.java Tue Oct 08 14:59:46 2013 -0700 75.3 @@ -41,7 +41,7 @@ 75.4 * @author Jonathan Gibbons 75.5 * @since 1.6 75.6 */ 75.7 -@jdk.Supported 75.8 +@jdk.Exported 75.9 public interface PrimitiveTypeTree extends Tree { 75.10 TypeKind getPrimitiveTypeKind(); 75.11 }
76.1 --- a/src/share/classes/com/sun/source/tree/ReturnTree.java Wed Oct 02 13:26:54 2013 -0700 76.2 +++ b/src/share/classes/com/sun/source/tree/ReturnTree.java Tue Oct 08 14:59:46 2013 -0700 76.3 @@ -40,7 +40,7 @@ 76.4 * @author Jonathan Gibbons 76.5 * @since 1.6 76.6 */ 76.7 -@jdk.Supported 76.8 +@jdk.Exported 76.9 public interface ReturnTree extends StatementTree { 76.10 ExpressionTree getExpression(); 76.11 }
77.1 --- a/src/share/classes/com/sun/source/tree/Scope.java Wed Oct 02 13:26:54 2013 -0700 77.2 +++ b/src/share/classes/com/sun/source/tree/Scope.java Tue Oct 08 14:59:46 2013 -0700 77.3 @@ -48,7 +48,7 @@ 77.4 * 77.5 * @since 1.6 77.6 */ 77.7 -@jdk.Supported 77.8 +@jdk.Exported 77.9 public interface Scope { 77.10 /** 77.11 * Returns the enclosing scope.
78.1 --- a/src/share/classes/com/sun/source/tree/StatementTree.java Wed Oct 02 13:26:54 2013 -0700 78.2 +++ b/src/share/classes/com/sun/source/tree/StatementTree.java Tue Oct 08 14:59:46 2013 -0700 78.3 @@ -35,5 +35,5 @@ 78.4 * @author Jonathan Gibbons 78.5 * @since 1.6 78.6 */ 78.7 -@jdk.Supported 78.8 +@jdk.Exported 78.9 public interface StatementTree extends Tree {}
79.1 --- a/src/share/classes/com/sun/source/tree/SwitchTree.java Wed Oct 02 13:26:54 2013 -0700 79.2 +++ b/src/share/classes/com/sun/source/tree/SwitchTree.java Tue Oct 08 14:59:46 2013 -0700 79.3 @@ -43,7 +43,7 @@ 79.4 * @author Jonathan Gibbons 79.5 * @since 1.6 79.6 */ 79.7 -@jdk.Supported 79.8 +@jdk.Exported 79.9 public interface SwitchTree extends StatementTree { 79.10 ExpressionTree getExpression(); 79.11 List<? extends CaseTree> getCases();
80.1 --- a/src/share/classes/com/sun/source/tree/SynchronizedTree.java Wed Oct 02 13:26:54 2013 -0700 80.2 +++ b/src/share/classes/com/sun/source/tree/SynchronizedTree.java Tue Oct 08 14:59:46 2013 -0700 80.3 @@ -40,7 +40,7 @@ 80.4 * @author Jonathan Gibbons 80.5 * @since 1.6 80.6 */ 80.7 -@jdk.Supported 80.8 +@jdk.Exported 80.9 public interface SynchronizedTree extends StatementTree { 80.10 ExpressionTree getExpression(); 80.11 BlockTree getBlock();
81.1 --- a/src/share/classes/com/sun/source/tree/ThrowTree.java Wed Oct 02 13:26:54 2013 -0700 81.2 +++ b/src/share/classes/com/sun/source/tree/ThrowTree.java Tue Oct 08 14:59:46 2013 -0700 81.3 @@ -39,7 +39,7 @@ 81.4 * @author Jonathan Gibbons 81.5 * @since 1.6 81.6 */ 81.7 -@jdk.Supported 81.8 +@jdk.Exported 81.9 public interface ThrowTree extends StatementTree { 81.10 ExpressionTree getExpression(); 81.11 }
82.1 --- a/src/share/classes/com/sun/source/tree/Tree.java Wed Oct 02 13:26:54 2013 -0700 82.2 +++ b/src/share/classes/com/sun/source/tree/Tree.java Tue Oct 08 14:59:46 2013 -0700 82.3 @@ -39,13 +39,13 @@ 82.4 * 82.5 * @since 1.6 82.6 */ 82.7 -@jdk.Supported 82.8 +@jdk.Exported 82.9 public interface Tree { 82.10 82.11 /** 82.12 * Enumerates all kinds of trees. 82.13 */ 82.14 - @jdk.Supported 82.15 + @jdk.Exported 82.16 public enum Kind { 82.17 82.18 ANNOTATED_TYPE(AnnotatedTypeTree.class),
83.1 --- a/src/share/classes/com/sun/source/tree/TreeVisitor.java Wed Oct 02 13:26:54 2013 -0700 83.2 +++ b/src/share/classes/com/sun/source/tree/TreeVisitor.java Tue Oct 08 14:59:46 2013 -0700 83.3 @@ -56,7 +56,7 @@ 83.4 * 83.5 * @since 1.6 83.6 */ 83.7 -@jdk.Supported 83.8 +@jdk.Exported 83.9 public interface TreeVisitor<R,P> { 83.10 R visitAnnotatedType(AnnotatedTypeTree node, P p); 83.11 R visitAnnotation(AnnotationTree node, P p);
84.1 --- a/src/share/classes/com/sun/source/tree/TryTree.java Wed Oct 02 13:26:54 2013 -0700 84.2 +++ b/src/share/classes/com/sun/source/tree/TryTree.java Tue Oct 08 14:59:46 2013 -0700 84.3 @@ -45,7 +45,7 @@ 84.4 * @author Jonathan Gibbons 84.5 * @since 1.6 84.6 */ 84.7 -@jdk.Supported 84.8 +@jdk.Exported 84.9 public interface TryTree extends StatementTree { 84.10 BlockTree getBlock(); 84.11 List<? extends CatchTree> getCatches();
85.1 --- a/src/share/classes/com/sun/source/tree/TypeCastTree.java Wed Oct 02 13:26:54 2013 -0700 85.2 +++ b/src/share/classes/com/sun/source/tree/TypeCastTree.java Tue Oct 08 14:59:46 2013 -0700 85.3 @@ -39,7 +39,7 @@ 85.4 * @author Jonathan Gibbons 85.5 * @since 1.6 85.6 */ 85.7 -@jdk.Supported 85.8 +@jdk.Exported 85.9 public interface TypeCastTree extends ExpressionTree { 85.10 Tree getType(); 85.11 ExpressionTree getExpression();
86.1 --- a/src/share/classes/com/sun/source/tree/TypeParameterTree.java Wed Oct 02 13:26:54 2013 -0700 86.2 +++ b/src/share/classes/com/sun/source/tree/TypeParameterTree.java Tue Oct 08 14:59:46 2013 -0700 86.3 @@ -46,7 +46,7 @@ 86.4 * @author Jonathan Gibbons 86.5 * @since 1.6 86.6 */ 86.7 -@jdk.Supported 86.8 +@jdk.Exported 86.9 public interface TypeParameterTree extends Tree { 86.10 Name getName(); 86.11 List<? extends Tree> getBounds();
87.1 --- a/src/share/classes/com/sun/source/tree/UnaryTree.java Wed Oct 02 13:26:54 2013 -0700 87.2 +++ b/src/share/classes/com/sun/source/tree/UnaryTree.java Tue Oct 08 14:59:46 2013 -0700 87.3 @@ -42,7 +42,7 @@ 87.4 * @author Jonathan Gibbons 87.5 * @since 1.6 87.6 */ 87.7 -@jdk.Supported 87.8 +@jdk.Exported 87.9 public interface UnaryTree extends ExpressionTree { 87.10 ExpressionTree getExpression(); 87.11 }
88.1 --- a/src/share/classes/com/sun/source/tree/UnionTypeTree.java Wed Oct 02 13:26:54 2013 -0700 88.2 +++ b/src/share/classes/com/sun/source/tree/UnionTypeTree.java Tue Oct 08 14:59:46 2013 -0700 88.3 @@ -34,7 +34,7 @@ 88.4 * 88.5 * @since 1.7 88.6 */ 88.7 -@jdk.Supported 88.8 +@jdk.Exported 88.9 public interface UnionTypeTree extends Tree { 88.10 List<? extends Tree> getTypeAlternatives(); 88.11 }
89.1 --- a/src/share/classes/com/sun/source/tree/VariableTree.java Wed Oct 02 13:26:54 2013 -0700 89.2 +++ b/src/share/classes/com/sun/source/tree/VariableTree.java Tue Oct 08 14:59:46 2013 -0700 89.3 @@ -42,7 +42,7 @@ 89.4 * @author Jonathan Gibbons 89.5 * @since 1.6 89.6 */ 89.7 -@jdk.Supported 89.8 +@jdk.Exported 89.9 public interface VariableTree extends StatementTree { 89.10 ModifiersTree getModifiers(); 89.11 Name getName();
90.1 --- a/src/share/classes/com/sun/source/tree/WhileLoopTree.java Wed Oct 02 13:26:54 2013 -0700 90.2 +++ b/src/share/classes/com/sun/source/tree/WhileLoopTree.java Tue Oct 08 14:59:46 2013 -0700 90.3 @@ -41,7 +41,7 @@ 90.4 * @author Jonathan Gibbons 90.5 * @since 1.6 90.6 */ 90.7 -@jdk.Supported 90.8 +@jdk.Exported 90.9 public interface WhileLoopTree extends StatementTree { 90.10 ExpressionTree getCondition(); 90.11 StatementTree getStatement();
91.1 --- a/src/share/classes/com/sun/source/tree/WildcardTree.java Wed Oct 02 13:26:54 2013 -0700 91.2 +++ b/src/share/classes/com/sun/source/tree/WildcardTree.java Tue Oct 08 14:59:46 2013 -0700 91.3 @@ -44,7 +44,7 @@ 91.4 * @author Jonathan Gibbons 91.5 * @since 1.6 91.6 */ 91.7 -@jdk.Supported 91.8 +@jdk.Exported 91.9 public interface WildcardTree extends Tree { 91.10 Tree getBound(); 91.11 }
92.1 --- a/src/share/classes/com/sun/source/tree/package-info.java Wed Oct 02 13:26:54 2013 -0700 92.2 +++ b/src/share/classes/com/sun/source/tree/package-info.java Tue Oct 08 14:59:46 2013 -0700 92.3 @@ -31,5 +31,5 @@ 92.4 * @author Jonathan Gibbons 92.5 * @since 1.6 92.6 */ 92.7 -@jdk.Supported 92.8 +@jdk.Exported 92.9 package com.sun.source.tree;
93.1 --- a/src/share/classes/com/sun/source/util/DocSourcePositions.java Wed Oct 02 13:26:54 2013 -0700 93.2 +++ b/src/share/classes/com/sun/source/util/DocSourcePositions.java Tue Oct 08 14:59:46 2013 -0700 93.3 @@ -36,7 +36,7 @@ 93.4 * 93.5 * @since 1.8 93.6 */ 93.7 -@jdk.Supported 93.8 +@jdk.Exported 93.9 public interface DocSourcePositions extends SourcePositions { 93.10 93.11 /**
94.1 --- a/src/share/classes/com/sun/source/util/DocTreePath.java Wed Oct 02 13:26:54 2013 -0700 94.2 +++ b/src/share/classes/com/sun/source/util/DocTreePath.java Tue Oct 08 14:59:46 2013 -0700 94.3 @@ -35,7 +35,7 @@ 94.4 * 94.5 * @since 1.8 94.6 */ 94.7 -@jdk.Supported 94.8 +@jdk.Exported 94.9 public class DocTreePath implements Iterable<DocTree> { 94.10 /** 94.11 * Gets a documentation tree path for a tree node within a compilation unit.
95.1 --- a/src/share/classes/com/sun/source/util/DocTreePathScanner.java Wed Oct 02 13:26:54 2013 -0700 95.2 +++ b/src/share/classes/com/sun/source/util/DocTreePathScanner.java Tue Oct 08 14:59:46 2013 -0700 95.3 @@ -36,7 +36,7 @@ 95.4 * 95.5 * @since 1.8 95.6 */ 95.7 -@jdk.Supported 95.8 +@jdk.Exported 95.9 public class DocTreePathScanner<R, P> extends DocTreeScanner<R, P> { 95.10 /** 95.11 * Scan a tree from a position identified by a TreePath.
96.1 --- a/src/share/classes/com/sun/source/util/DocTreeScanner.java Wed Oct 02 13:26:54 2013 -0700 96.2 +++ b/src/share/classes/com/sun/source/util/DocTreeScanner.java Tue Oct 08 14:59:46 2013 -0700 96.3 @@ -67,7 +67,7 @@ 96.4 * 96.5 * @since 1.8 96.6 */ 96.7 -@jdk.Supported 96.8 +@jdk.Exported 96.9 public class DocTreeScanner<R,P> implements DocTreeVisitor<R,P> { 96.10 96.11 /**
97.1 --- a/src/share/classes/com/sun/source/util/DocTrees.java Wed Oct 02 13:26:54 2013 -0700 97.2 +++ b/src/share/classes/com/sun/source/util/DocTrees.java Tue Oct 08 14:59:46 2013 -0700 97.3 @@ -37,7 +37,7 @@ 97.4 * 97.5 * @since 1.8 97.6 */ 97.7 -@jdk.Supported 97.8 +@jdk.Exported 97.9 public abstract class DocTrees extends Trees { 97.10 /** 97.11 * Gets a DocTrees object for a given CompilationTask.
98.1 --- a/src/share/classes/com/sun/source/util/JavacTask.java Wed Oct 02 13:26:54 2013 -0700 98.2 +++ b/src/share/classes/com/sun/source/util/JavacTask.java Tue Oct 08 14:59:46 2013 -0700 98.3 @@ -48,7 +48,7 @@ 98.4 * @author Jonathan Gibbons 98.5 * @since 1.6 98.6 */ 98.7 -@jdk.Supported 98.8 +@jdk.Exported 98.9 public abstract class JavacTask implements CompilationTask { 98.10 98.11 /**
99.1 --- a/src/share/classes/com/sun/source/util/Plugin.java Wed Oct 02 13:26:54 2013 -0700 99.2 +++ b/src/share/classes/com/sun/source/util/Plugin.java Tue Oct 08 14:59:46 2013 -0700 99.3 @@ -48,7 +48,7 @@ 99.4 * 99.5 * @since 1.8 99.6 */ 99.7 -@jdk.Supported 99.8 +@jdk.Exported 99.9 public interface Plugin { 99.10 /** 99.11 * Get the user-friendly name of this plug-in.
100.1 --- a/src/share/classes/com/sun/source/util/SimpleDocTreeVisitor.java Wed Oct 02 13:26:54 2013 -0700 100.2 +++ b/src/share/classes/com/sun/source/util/SimpleDocTreeVisitor.java Tue Oct 08 14:59:46 2013 -0700 100.3 @@ -32,7 +32,7 @@ 100.4 * 100.5 * @since 1.8 100.6 */ 100.7 -@jdk.Supported 100.8 +@jdk.Exported 100.9 public class SimpleDocTreeVisitor<R,P> implements DocTreeVisitor<R, P> { 100.10 protected final R DEFAULT_VALUE; 100.11
101.1 --- a/src/share/classes/com/sun/source/util/SimpleTreeVisitor.java Wed Oct 02 13:26:54 2013 -0700 101.2 +++ b/src/share/classes/com/sun/source/util/SimpleTreeVisitor.java Tue Oct 08 14:59:46 2013 -0700 101.3 @@ -33,7 +33,7 @@ 101.4 * @author Peter von der Ahé 101.5 * @since 1.6 101.6 */ 101.7 -@jdk.Supported 101.8 +@jdk.Exported 101.9 public class SimpleTreeVisitor <R,P> implements TreeVisitor<R,P> { 101.10 protected final R DEFAULT_VALUE; 101.11
102.1 --- a/src/share/classes/com/sun/source/util/SourcePositions.java Wed Oct 02 13:26:54 2013 -0700 102.2 +++ b/src/share/classes/com/sun/source/util/SourcePositions.java Tue Oct 08 14:59:46 2013 -0700 102.3 @@ -35,7 +35,7 @@ 102.4 * @author Peter von der Ahé 102.5 * @since 1.6 102.6 */ 102.7 -@jdk.Supported 102.8 +@jdk.Exported 102.9 public interface SourcePositions { 102.10 102.11 /**
103.1 --- a/src/share/classes/com/sun/source/util/TaskEvent.java Wed Oct 02 13:26:54 2013 -0700 103.2 +++ b/src/share/classes/com/sun/source/util/TaskEvent.java Tue Oct 08 14:59:46 2013 -0700 103.3 @@ -36,14 +36,14 @@ 103.4 * @author Jonathan Gibbons 103.5 * @since 1.6 103.6 */ 103.7 -@jdk.Supported 103.8 +@jdk.Exported 103.9 public final class TaskEvent 103.10 { 103.11 /** 103.12 * Kind of task event. 103.13 * @since 1.6 103.14 */ 103.15 - @jdk.Supported 103.16 + @jdk.Exported 103.17 public enum Kind { 103.18 /** 103.19 * For events related to the parsing of a file.
104.1 --- a/src/share/classes/com/sun/source/util/TaskListener.java Wed Oct 02 13:26:54 2013 -0700 104.2 +++ b/src/share/classes/com/sun/source/util/TaskListener.java Tue Oct 08 14:59:46 2013 -0700 104.3 @@ -32,7 +32,7 @@ 104.4 * @author Jonathan Gibbons 104.5 * @since 1.6 104.6 */ 104.7 -@jdk.Supported 104.8 +@jdk.Exported 104.9 public interface TaskListener 104.10 { 104.11 public void started(TaskEvent e);
105.1 --- a/src/share/classes/com/sun/source/util/TreePath.java Wed Oct 02 13:26:54 2013 -0700 105.2 +++ b/src/share/classes/com/sun/source/util/TreePath.java Tue Oct 08 14:59:46 2013 -0700 105.3 @@ -36,7 +36,7 @@ 105.4 * @author Jonathan Gibbons 105.5 * @since 1.6 105.6 */ 105.7 -@jdk.Supported 105.8 +@jdk.Exported 105.9 public class TreePath implements Iterable<Tree> { 105.10 /** 105.11 * Gets a tree path for a tree node within a compilation unit.
106.1 --- a/src/share/classes/com/sun/source/util/TreePathScanner.java Wed Oct 02 13:26:54 2013 -0700 106.2 +++ b/src/share/classes/com/sun/source/util/TreePathScanner.java Tue Oct 08 14:59:46 2013 -0700 106.3 @@ -38,7 +38,7 @@ 106.4 * @author Jonathan Gibbons 106.5 * @since 1.6 106.6 */ 106.7 -@jdk.Supported 106.8 +@jdk.Exported 106.9 public class TreePathScanner<R, P> extends TreeScanner<R, P> { 106.10 106.11 /**
107.1 --- a/src/share/classes/com/sun/source/util/TreeScanner.java Wed Oct 02 13:26:54 2013 -0700 107.2 +++ b/src/share/classes/com/sun/source/util/TreeScanner.java Tue Oct 08 14:59:46 2013 -0700 107.3 @@ -68,7 +68,7 @@ 107.4 * @author Jonathan Gibbons 107.5 * @since 1.6 107.6 */ 107.7 -@jdk.Supported 107.8 +@jdk.Exported 107.9 public class TreeScanner<R,P> implements TreeVisitor<R,P> { 107.10 107.11 /** Scan a single node.
108.1 --- a/src/share/classes/com/sun/source/util/Trees.java Wed Oct 02 13:26:54 2013 -0700 108.2 +++ b/src/share/classes/com/sun/source/util/Trees.java Tue Oct 08 14:59:46 2013 -0700 108.3 @@ -51,7 +51,7 @@ 108.4 * 108.5 * @author Peter von der Ahé 108.6 */ 108.7 -@jdk.Supported 108.8 +@jdk.Exported 108.9 public abstract class Trees { 108.10 /** 108.11 * Gets a Trees object for a given CompilationTask.
109.1 --- a/src/share/classes/com/sun/source/util/package-info.java Wed Oct 02 13:26:54 2013 -0700 109.2 +++ b/src/share/classes/com/sun/source/util/package-info.java Tue Oct 08 14:59:46 2013 -0700 109.3 @@ -30,5 +30,5 @@ 109.4 * @author Jonathan Gibbons 109.5 * @since 1.6 109.6 */ 109.7 -@jdk.Supported 109.8 +@jdk.Exported 109.9 package com.sun.source.util;
110.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java Wed Oct 02 13:26:54 2013 -0700 110.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/AbstractMemberWriter.java Tue Oct 08 14:59:46 2013 -0700 110.3 @@ -413,7 +413,7 @@ 110.4 protected void addDeprecatedAPI(List<Doc> deprmembers, String headingKey, 110.5 String tableSummary, String[] tableHeader, Content contentTree) { 110.6 if (deprmembers.size() > 0) { 110.7 - Content table = HtmlTree.TABLE(0, 3, 0, tableSummary, 110.8 + Content table = HtmlTree.TABLE(HtmlStyle.deprecatedSummary, 0, 3, 0, tableSummary, 110.9 writer.getTableCaption(configuration.getResource(headingKey))); 110.10 table.addContent(writer.getSummaryTableHeader(tableHeader, "col")); 110.11 Content tbody = new HtmlTree(HtmlTag.TBODY); 110.12 @@ -453,7 +453,7 @@ 110.13 List<? extends ProgramElementDoc> members = mems; 110.14 boolean printedUseTableHeader = false; 110.15 if (members.size() > 0) { 110.16 - Content table = HtmlTree.TABLE(0, 3, 0, tableSummary, 110.17 + Content table = HtmlTree.TABLE(HtmlStyle.useSummary, 0, 3, 0, tableSummary, 110.18 writer.getTableCaption(heading)); 110.19 Content tbody = new HtmlTree(HtmlTag.TBODY); 110.20 Iterator<? extends ProgramElementDoc> it = members.iterator();
111.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java Wed Oct 02 13:26:54 2013 -0700 111.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/ClassUseWriter.java Tue Oct 08 14:59:46 2013 -0700 111.3 @@ -263,7 +263,7 @@ 111.4 * @param contentTree the content tree to which the packages list will be added 111.5 */ 111.6 protected void addPackageList(Content contentTree) throws IOException { 111.7 - Content table = HtmlTree.TABLE(0, 3, 0, useTableSummary, 111.8 + Content table = HtmlTree.TABLE(HtmlStyle.useSummary, 0, 3, 0, useTableSummary, 111.9 getTableCaption(configuration.getResource( 111.10 "doclet.ClassUse_Packages.that.use.0", 111.11 getLink(new LinkInfoImpl(configuration, LinkInfoImpl.Kind.CLASS_USE_HEADER, classdoc 111.12 @@ -298,7 +298,7 @@ 111.13 pkgToPackageAnnotations.isEmpty()) { 111.14 return; 111.15 } 111.16 - Content table = HtmlTree.TABLE(0, 3, 0, useTableSummary, 111.17 + Content table = HtmlTree.TABLE(HtmlStyle.useSummary, 0, 3, 0, useTableSummary, 111.18 getTableCaption(configuration.getResource( 111.19 "doclet.ClassUse_PackageAnnotation", 111.20 getLink(new LinkInfoImpl(configuration,
112.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java Wed Oct 02 13:26:54 2013 -0700 112.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/ConstantsSummaryWriterImpl.java Tue Oct 08 14:59:46 2013 -0700 112.3 @@ -207,7 +207,7 @@ 112.4 * @return the table caption and header 112.5 */ 112.6 protected Content getClassName(Content classStr) { 112.7 - Content table = HtmlTree.TABLE(0, 3, 0, constantsTableSummary, 112.8 + Content table = HtmlTree.TABLE(HtmlStyle.constantsSummary, 0, 3, 0, constantsTableSummary, 112.9 getTableCaption(classStr)); 112.10 table.addContent(getSummaryTableHeader(constantsTableHeader, "col")); 112.11 return table;
113.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java Wed Oct 02 13:26:54 2013 -0700 113.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/HtmlDoclet.java Tue Oct 08 14:59:46 2013 -0700 113.3 @@ -194,6 +194,10 @@ 113.4 .getClassBuilder(curr, prev, next, classtree); 113.5 classBuilder.build(); 113.6 } 113.7 + } catch (IOException e) { 113.8 + throw new DocletAbortException(e); 113.9 + } catch (DocletAbortException de) { 113.10 + throw de; 113.11 } catch (Exception e) { 113.12 e.printStackTrace(); 113.13 throw new DocletAbortException(e);
114.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java Wed Oct 02 13:26:54 2013 -0700 114.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/HtmlDocletWriter.java Tue Oct 08 14:59:46 2013 -0700 114.3 @@ -356,7 +356,7 @@ 114.4 if(classes.length > 0) { 114.5 Arrays.sort(classes); 114.6 Content caption = getTableCaption(new RawHtml(label)); 114.7 - Content table = HtmlTree.TABLE(HtmlStyle.packageSummary, 0, 3, 0, 114.8 + Content table = HtmlTree.TABLE(HtmlStyle.typeSummary, 0, 3, 0, 114.9 tableSummary, caption); 114.10 table.addContent(getSummaryTableHeader(tableHeader, "col")); 114.11 Content tbody = new HtmlTree(HtmlTag.TBODY); 114.12 @@ -937,7 +937,7 @@ 114.13 protected void addPackageDeprecatedAPI(List<Doc> deprPkgs, String headingKey, 114.14 String tableSummary, String[] tableHeader, Content contentTree) { 114.15 if (deprPkgs.size() > 0) { 114.16 - Content table = HtmlTree.TABLE(0, 3, 0, tableSummary, 114.17 + Content table = HtmlTree.TABLE(HtmlStyle.deprecatedSummary, 0, 3, 0, tableSummary, 114.18 getTableCaption(configuration.getResource(headingKey))); 114.19 table.addContent(getSummaryTableHeader(tableHeader, "col")); 114.20 Content tbody = new HtmlTree(HtmlTag.TBODY);
115.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java Wed Oct 02 13:26:54 2013 -0700 115.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/PackageUseWriter.java Tue Oct 08 14:59:46 2013 -0700 115.3 @@ -151,7 +151,7 @@ 115.4 * @param contentTree the content tree to which the package list will be added 115.5 */ 115.6 protected void addPackageList(Content contentTree) throws IOException { 115.7 - Content table = HtmlTree.TABLE(0, 3, 0, useTableSummary, 115.8 + Content table = HtmlTree.TABLE(HtmlStyle.useSummary, 0, 3, 0, useTableSummary, 115.9 getTableCaption(configuration.getResource( 115.10 "doclet.ClassUse_Packages.that.use.0", 115.11 getPackageLink(pkgdoc, Util.getPackageName(pkgdoc))))); 115.12 @@ -196,7 +196,7 @@ 115.13 } 115.14 String tableSummary = configuration.getText("doclet.Use_Table_Summary", 115.15 configuration.getText("doclet.classes")); 115.16 - Content table = HtmlTree.TABLE(0, 3, 0, tableSummary, 115.17 + Content table = HtmlTree.TABLE(HtmlStyle.useSummary, 0, 3, 0, tableSummary, 115.18 getTableCaption(configuration.getResource( 115.19 "doclet.ClassUse_Classes.in.0.used.by.1", 115.20 getPackageLink(pkgdoc, Util.getPackageName(pkgdoc)),
116.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java Wed Oct 02 13:26:54 2013 -0700 116.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/PackageWriterImpl.java Tue Oct 08 14:59:46 2013 -0700 116.3 @@ -169,7 +169,7 @@ 116.4 if(classes.length > 0) { 116.5 Arrays.sort(classes); 116.6 Content caption = getTableCaption(new RawHtml(label)); 116.7 - Content table = HtmlTree.TABLE(HtmlStyle.packageSummary, 0, 3, 0, 116.8 + Content table = HtmlTree.TABLE(HtmlStyle.typeSummary, 0, 3, 0, 116.9 tableSummary, caption); 116.10 table.addContent(getSummaryTableHeader(tableHeader, "col")); 116.11 Content tbody = new HtmlTree(HtmlTag.TBODY);
117.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java Wed Oct 02 13:26:54 2013 -0700 117.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/SubWriterHolderWriter.java Tue Oct 08 14:59:46 2013 -0700 117.3 @@ -92,7 +92,7 @@ 117.4 else { 117.5 caption = getTableCaption(mw.getCaption()); 117.6 } 117.7 - Content table = HtmlTree.TABLE(HtmlStyle.overviewSummary, 0, 3, 0, 117.8 + Content table = HtmlTree.TABLE(HtmlStyle.memberSummary, 0, 3, 0, 117.9 mw.getTableSummary(), caption); 117.10 table.addContent(getSummaryTableHeader(mw.getSummaryTableHeader(cd), "col")); 117.11 for (int i = 0; i < tableContents.size(); i++) {
118.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlStyle.java Wed Oct 02 13:26:54 2013 -0700 118.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlStyle.java Tue Oct 08 14:59:46 2013 -0700 118.3 @@ -48,8 +48,11 @@ 118.4 colFirst, 118.5 colLast, 118.6 colOne, 118.7 + constantsSummary, 118.8 constantValuesContainer, 118.9 contentContainer, 118.10 + deprecatedContent, 118.11 + deprecatedSummary, 118.12 description, 118.13 details, 118.14 docSummary, 118.15 @@ -61,11 +64,11 @@ 118.16 inheritance, 118.17 italic, 118.18 legalCopy, 118.19 + memberSummary, 118.20 nameValue, 118.21 navBarCell1Rev, 118.22 navList, 118.23 overviewSummary, 118.24 - packageSummary, 118.25 rowColor, 118.26 serializedFormContainer, 118.27 skipNav, 118.28 @@ -76,9 +79,10 @@ 118.29 subNavList, 118.30 subTitle, 118.31 summary, 118.32 - deprecatedContent, 118.33 tabEnd, 118.34 tableTab, 118.35 title, 118.36 - topNav; 118.37 + topNav, 118.38 + typeSummary, 118.39 + useSummary; 118.40 }
119.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTree.java Wed Oct 02 13:26:54 2013 -0700 119.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlTree.java Tue Oct 08 14:59:46 2013 -0700 119.3 @@ -619,25 +619,6 @@ 119.4 } 119.5 119.6 /** 119.7 - * Generates a Table tag with border, width and summary attributes and 119.8 - * some content. 119.9 - * 119.10 - * @param border border for the table 119.11 - * @param width width of the table 119.12 - * @param summary summary for the table 119.13 - * @param body content for the table 119.14 - * @return an HtmlTree object for the TABLE tag 119.15 - */ 119.16 - public static HtmlTree TABLE(int border, int width, String summary, 119.17 - Content body) { 119.18 - HtmlTree htmltree = new HtmlTree(HtmlTag.TABLE, nullCheck(body)); 119.19 - htmltree.addAttr(HtmlAttr.BORDER, Integer.toString(border)); 119.20 - htmltree.addAttr(HtmlAttr.WIDTH, Integer.toString(width)); 119.21 - htmltree.addAttr(HtmlAttr.SUMMARY, nullCheck(summary)); 119.22 - return htmltree; 119.23 - } 119.24 - 119.25 - /** 119.26 * Generates a Table tag with style class, border, cell padding, 119.27 * cellspacing and summary attributes and some content. 119.28 * 119.29 @@ -662,22 +643,6 @@ 119.30 } 119.31 119.32 /** 119.33 - * Generates a Table tag with border, cell padding, 119.34 - * cellspacing and summary attributes and some content. 119.35 - * 119.36 - * @param border border for the table 119.37 - * @param cellPadding cell padding for the table 119.38 - * @param cellSpacing cell spacing for the table 119.39 - * @param summary summary for the table 119.40 - * @param body content for the table 119.41 - * @return an HtmlTree object for the TABLE tag 119.42 - */ 119.43 - public static HtmlTree TABLE(int border, int cellPadding, 119.44 - int cellSpacing, String summary, Content body) { 119.45 - return TABLE(null, border, cellPadding, cellSpacing, summary, body); 119.46 - } 119.47 - 119.48 - /** 119.49 * Generates a TD tag with style class attribute and some content. 119.50 * 119.51 * @param styleClass style for the tag
120.1 --- a/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java Wed Oct 02 13:26:54 2013 -0700 120.2 +++ b/src/share/classes/com/sun/tools/doclets/formats/html/markup/HtmlWriter.java Tue Oct 08 14:59:46 2013 -0700 120.3 @@ -310,8 +310,12 @@ 120.4 if(winTitle != null && winTitle.length() > 0) { 120.5 script.addAttr(HtmlAttr.TYPE, "text/javascript"); 120.6 String scriptCode = "<!--" + DocletConstants.NL + 120.7 - " if (location.href.indexOf('is-external=true') == -1) {" + DocletConstants.NL + 120.8 - " parent.document.title=\"" + winTitle + "\";" + DocletConstants.NL + 120.9 + " try {" + DocletConstants.NL + 120.10 + " if (location.href.indexOf('is-external=true') == -1) {" + DocletConstants.NL + 120.11 + " parent.document.title=\"" + winTitle + "\";" + DocletConstants.NL + 120.12 + " }" + DocletConstants.NL + 120.13 + " }" + DocletConstants.NL + 120.14 + " catch(err) {" + DocletConstants.NL + 120.15 " }" + DocletConstants.NL + 120.16 "//-->" + DocletConstants.NL; 120.17 RawHtml scriptContent = new RawHtml(scriptCode);
121.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/AbstractDoclet.java Wed Oct 02 13:26:54 2013 -0700 121.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/AbstractDoclet.java Tue Oct 08 14:59:46 2013 -0700 121.3 @@ -83,6 +83,16 @@ 121.4 } catch (Configuration.Fault f) { 121.5 root.printError(f.getMessage()); 121.6 return false; 121.7 + } catch (DocletAbortException e) { 121.8 + Throwable cause = e.getCause(); 121.9 + if (cause != null) { 121.10 + if (cause.getLocalizedMessage() != null) { 121.11 + root.printError(cause.getLocalizedMessage()); 121.12 + } else { 121.13 + root.printError(cause.toString()); 121.14 + } 121.15 + } 121.16 + return false; 121.17 } catch (Exception exc) { 121.18 exc.printStackTrace(); 121.19 return false;
122.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java Wed Oct 02 13:26:54 2013 -0700 122.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/builders/AbstractBuilder.java Tue Oct 08 14:59:46 2013 -0700 122.3 @@ -140,7 +140,7 @@ 122.4 configuration.root.printError("Unknown element: " + component); 122.5 throw new DocletAbortException(e); 122.6 } catch (InvocationTargetException e) { 122.7 - e.getCause().printStackTrace(); 122.8 + throw new DocletAbortException(e.getCause()); 122.9 } catch (Exception e) { 122.10 e.printStackTrace(); 122.11 configuration.root.printError("Exception " +
123.1 --- a/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/stylesheet.css Wed Oct 02 13:26:54 2013 -0700 123.2 +++ b/src/share/classes/com/sun/tools/doclets/internal/toolkit/resources/stylesheet.css Tue Oct 08 14:59:46 2013 -0700 123.3 @@ -348,27 +348,16 @@ 123.4 /* 123.5 Table styles 123.6 */ 123.7 -.contentContainer table, .classUseContainer table, .constantValuesContainer table { 123.8 +.overviewSummary, .memberSummary, .typeSummary, .useSummary, .constantsSummary, .deprecatedSummary { 123.9 border-bottom:1px solid #9eadc0; 123.10 + margin:0 0 12px 0px; 123.11 width:100%; 123.12 } 123.13 -.contentContainer ul li table, .classUseContainer ul li table, .constantValuesContainer ul li table { 123.14 - width:100%; 123.15 +.overviewSummary, .memberSummary { 123.16 + padding:0px; 123.17 } 123.18 -.contentContainer .description table, .contentContainer .details table { 123.19 - border-bottom:none; 123.20 -} 123.21 -.contentContainer ul li table th.colOne, .contentContainer ul li table th.colFirst, .contentContainer ul li table th.colLast, .classUseContainer ul li table th, .constantValuesContainer ul li table th, .contentContainer ul li table td.colOne, .contentContainer ul li table td.colFirst, .contentContainer ul li table td.colLast, .classUseContainer ul li table td, .constantValuesContainer ul li table td{ 123.22 - vertical-align:top; 123.23 - padding-right:20px; 123.24 -} 123.25 -.contentContainer ul li table th.colLast, .classUseContainer ul li table th.colLast,.constantValuesContainer ul li table th.colLast, 123.26 -.contentContainer ul li table td.colLast, .classUseContainer ul li table td.colLast,.constantValuesContainer ul li table td.colLast, 123.27 -.contentContainer ul li table th.colOne, .classUseContainer ul li table th.colOne, 123.28 -.contentContainer ul li table td.colOne, .classUseContainer ul li table td.colOne { 123.29 - padding-right:3px; 123.30 -} 123.31 -.overviewSummary caption, .packageSummary caption, .contentContainer ul.blockList li.blockList caption, .summary caption, .classUseContainer caption, .constantValuesContainer caption { 123.32 +.overviewSummary caption, .memberSummary caption, .typeSummary caption, 123.33 +.useSummary caption, .constantsSummary caption, .deprecatedSummary caption { 123.34 position:relative; 123.35 text-align:left; 123.36 background-repeat:no-repeat; 123.37 @@ -379,10 +368,18 @@ 123.38 padding:0px; 123.39 margin:0px; 123.40 } 123.41 -caption a:link, caption a:hover, caption a:active, caption a:visited { 123.42 +.overviewSummary caption a:link, .memberSummary caption a:link, .typeSummary caption a:link, 123.43 +.useSummary caption a:link, .constantsSummary caption a:link, .deprecatedSummary caption a:link, 123.44 +.overviewSummary caption a:hover, .memberSummary caption a:hover, .typeSummary caption a:hover, 123.45 +.useSummary caption a:hover, .constantsSummary caption a:hover, .deprecatedSummary caption a:hover, 123.46 +.overviewSummary caption a:active, .memberSummary caption a:active, .typeSummary caption a:active, 123.47 +.useSummary caption a:active, .constantsSummary caption a:active, .deprecatedSummary caption a:active, 123.48 +.overviewSummary caption a:visited, .memberSummary caption a:visited, .typeSummary caption a:visited, 123.49 +.useSummary caption a:visited, .constantsSummary caption a:visited, .deprecatedSummary caption a:visited { 123.50 color:#FFFFFF; 123.51 } 123.52 -.overviewSummary caption span, .packageSummary caption span, .contentContainer ul.blockList li.blockList caption span, .summary caption span, .classUseContainer caption span, .constantValuesContainer caption span { 123.53 +.overviewSummary caption span, .memberSummary caption span, .typeSummary caption span, 123.54 +.useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span { 123.55 white-space:nowrap; 123.56 padding-top:8px; 123.57 padding-left:8px; 123.58 @@ -390,7 +387,7 @@ 123.59 float:left; 123.60 background-image:url(resources/titlebar.gif); 123.61 } 123.62 -.contentContainer ul.blockList li.blockList caption span.activeTableTab span { 123.63 +.memberSummary caption span.activeTableTab span { 123.64 white-space:nowrap; 123.65 padding-top:8px; 123.66 padding-left:8px; 123.67 @@ -398,7 +395,7 @@ 123.68 float:left; 123.69 background-image:url(resources/activetitlebar.gif); 123.70 } 123.71 -.contentContainer ul.blockList li.blockList caption span.tableTab span { 123.72 +.memberSummary caption span.tableTab span { 123.73 white-space:nowrap; 123.74 padding-top:8px; 123.75 padding-left:8px; 123.76 @@ -406,14 +403,15 @@ 123.77 float:left; 123.78 background-image:url(resources/titlebar.gif); 123.79 } 123.80 -.contentContainer ul.blockList li.blockList caption span.tableTab, .contentContainer ul.blockList li.blockList caption span.activeTableTab { 123.81 +.memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab { 123.82 padding-top:0px; 123.83 padding-left:0px; 123.84 background-image:none; 123.85 float:none; 123.86 display:inline-block; 123.87 } 123.88 -.overviewSummary .tabEnd, .packageSummary .tabEnd, .contentContainer ul.blockList li.blockList .tabEnd, .summary .tabEnd, .classUseContainer .tabEnd, .constantValuesContainer .tabEnd { 123.89 +.overviewSummary .tabEnd, .memberSummary .tabEnd, .typeSummary .tabEnd, 123.90 +.useSummary .tabEnd, .constantsSummary .tabEnd, .deprecatedSummary .tabEnd { 123.91 width:10px; 123.92 background-image:url(resources/titlebar_end.gif); 123.93 background-repeat:no-repeat; 123.94 @@ -421,7 +419,7 @@ 123.95 position:relative; 123.96 float:left; 123.97 } 123.98 -.contentContainer ul.blockList li.blockList .activeTableTab .tabEnd { 123.99 +.memberSummary .activeTableTab .tabEnd { 123.100 width:10px; 123.101 margin-right:5px; 123.102 background-image:url(resources/activetitlebar_end.gif); 123.103 @@ -430,7 +428,7 @@ 123.104 position:relative; 123.105 float:left; 123.106 } 123.107 -.contentContainer ul.blockList li.blockList .tableTab .tabEnd { 123.108 +.memberSummary .tableTab .tabEnd { 123.109 width:10px; 123.110 margin-right:5px; 123.111 background-image:url(resources/titlebar_end.gif); 123.112 @@ -439,33 +437,23 @@ 123.113 position:relative; 123.114 float:left; 123.115 } 123.116 -ul.blockList ul.blockList li.blockList table { 123.117 - margin:0 0 12px 0px; 123.118 - width:100%; 123.119 -} 123.120 -.tableSubHeadingColor { 123.121 - background-color: #EEEEFF; 123.122 -} 123.123 -.altColor { 123.124 - background-color:#eeeeef; 123.125 -} 123.126 -.rowColor { 123.127 - background-color:#ffffff; 123.128 -} 123.129 -.overviewSummary td, .packageSummary td, .contentContainer ul.blockList li.blockList td, .summary td, .classUseContainer td, .constantValuesContainer td { 123.130 +.overviewSummary td, .memberSummary td, .typeSummary td, 123.131 +.useSummary td, .constantsSummary td, .deprecatedSummary td { 123.132 text-align:left; 123.133 padding:3px 3px 3px 7px; 123.134 } 123.135 -th.colFirst, th.colLast, th.colOne, .constantValuesContainer th { 123.136 +th.colOne, th.colFirst, th.colLast, .useSummary th, .constantsSummary th, 123.137 +td.colOne, td.colFirst, td.colLast, .useSummary td, .constantsSummary td{ 123.138 + vertical-align:top; 123.139 + padding-right:3px; 123.140 +} 123.141 +th.colFirst, th.colLast, th.colOne, .constantsSummary th { 123.142 background:#dee3e9; 123.143 border-top:1px solid #9eadc0; 123.144 border-bottom:1px solid #9eadc0; 123.145 text-align:left; 123.146 padding:3px 3px 3px 7px; 123.147 } 123.148 -td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover { 123.149 - font-weight:bold; 123.150 -} 123.151 td.colFirst, th.colFirst { 123.152 border-left:1px solid #9eadc0; 123.153 white-space:nowrap; 123.154 @@ -477,18 +465,25 @@ 123.155 border-right:1px solid #9eadc0; 123.156 border-left:1px solid #9eadc0; 123.157 } 123.158 -table.overviewSummary { 123.159 - padding:0px; 123.160 - margin-left:0px; 123.161 -} 123.162 -table.overviewSummary td.colFirst, table.overviewSummary th.colFirst, 123.163 -table.overviewSummary td.colOne, table.overviewSummary th.colOne { 123.164 +.overviewSummary td.colFirst, .overviewSummary th.colFirst, 123.165 +.overviewSummary td.colOne, .overviewSummary th.colOne, 123.166 +.memberSummary td.colFirst, .memberSummary th.colFirst, 123.167 +.memberSummary td.colOne, .memberSummary th.colOne, 123.168 +.typeSummary td.colFirst{ 123.169 width:25%; 123.170 vertical-align:middle; 123.171 } 123.172 -table.packageSummary td.colFirst, table.overviewSummary th.colFirst { 123.173 - width:25%; 123.174 - vertical-align:middle; 123.175 +td.colOne a:link, td.colOne a:active, td.colOne a:visited, td.colOne a:hover, td.colFirst a:link, td.colFirst a:active, td.colFirst a:visited, td.colFirst a:hover, td.colLast a:link, td.colLast a:active, td.colLast a:visited, td.colLast a:hover, .constantValuesContainer td a:link, .constantValuesContainer td a:active, .constantValuesContainer td a:visited, .constantValuesContainer td a:hover { 123.176 + font-weight:bold; 123.177 +} 123.178 +.tableSubHeadingColor { 123.179 + background-color: #EEEEFF; 123.180 +} 123.181 +.altColor { 123.182 + background-color:#eeeeef; 123.183 +} 123.184 +.rowColor { 123.185 + background-color:#ffffff; 123.186 } 123.187 /* 123.188 Content styles
124.1 --- a/src/share/classes/com/sun/tools/javac/Main.java Wed Oct 02 13:26:54 2013 -0700 124.2 +++ b/src/share/classes/com/sun/tools/javac/Main.java Tue Oct 08 14:59:46 2013 -0700 124.3 @@ -31,7 +31,7 @@ 124.4 * The programmatic interface for the Java Programming Language 124.5 * compiler, javac. 124.6 */ 124.7 -@jdk.Supported 124.8 +@jdk.Exported 124.9 public class Main { 124.10 124.11 /** Main entry point for the launcher.
125.1 --- a/src/share/classes/com/sun/tools/javac/api/JavacTool.java Wed Oct 02 13:26:54 2013 -0700 125.2 +++ b/src/share/classes/com/sun/tools/javac/api/JavacTool.java Tue Oct 08 14:59:46 2013 -0700 125.3 @@ -1,5 +1,5 @@ 125.4 /* 125.5 - * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved. 125.6 + * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved. 125.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 125.8 * 125.9 * This code is free software; you can redistribute it and/or modify it 125.10 @@ -120,7 +120,6 @@ 125.11 try { 125.12 ClientCodeWrapper ccw = ClientCodeWrapper.instance(context); 125.13 125.14 - final String kindMsg = "All compilation units must be of SOURCE kind"; 125.15 if (options != null) 125.16 for (String option : options) 125.17 option.getClass(); // null check 125.18 @@ -132,8 +131,11 @@ 125.19 if (compilationUnits != null) { 125.20 compilationUnits = ccw.wrapJavaFileObjects(compilationUnits); // implicit null check 125.21 for (JavaFileObject cu : compilationUnits) { 125.22 - if (cu.getKind() != JavaFileObject.Kind.SOURCE) 125.23 + if (cu.getKind() != JavaFileObject.Kind.SOURCE) { 125.24 + String kindMsg = "Compilation unit is not of SOURCE kind: " 125.25 + + "\"" + cu.getName() + "\""; 125.26 throw new IllegalArgumentException(kindMsg); 125.27 + } 125.28 } 125.29 } 125.30
126.1 --- a/src/share/classes/com/sun/tools/javac/code/Symbol.java Wed Oct 02 13:26:54 2013 -0700 126.2 +++ b/src/share/classes/com/sun/tools/javac/code/Symbol.java Tue Oct 08 14:59:46 2013 -0700 126.3 @@ -327,7 +327,8 @@ 126.4 public boolean isStatic() { 126.5 return 126.6 (flags() & STATIC) != 0 || 126.7 - (owner.flags() & INTERFACE) != 0 && kind != MTH; 126.8 + (owner.flags() & INTERFACE) != 0 && kind != MTH && 126.9 + name != name.table.names._this; 126.10 } 126.11 126.12 public boolean isInterface() { 126.13 @@ -1060,6 +1061,12 @@ 126.14 return ElementKind.CLASS; 126.15 } 126.16 126.17 + @Override 126.18 + public Set<Modifier> getModifiers() { 126.19 + long flags = flags(); 126.20 + return Flags.asModifierSet(flags & ~DEFAULT); 126.21 + } 126.22 + 126.23 public NestingKind getNestingKind() { 126.24 complete(); 126.25 if (owner.kind == PCK)
127.1 --- a/src/share/classes/com/sun/tools/javac/code/Type.java Wed Oct 02 13:26:54 2013 -0700 127.2 +++ b/src/share/classes/com/sun/tools/javac/code/Type.java Tue Oct 08 14:59:46 2013 -0700 127.3 @@ -1651,6 +1651,9 @@ 127.4 public <R, P> R accept(TypeVisitor<R, P> v, P p) { 127.5 return v.visitNoType(this, p); 127.6 } 127.7 + 127.8 + @Override 127.9 + public boolean isCompound() { return false; } 127.10 } 127.11 127.12 /** Represents VOID. 127.13 @@ -1672,6 +1675,9 @@ 127.14 } 127.15 127.16 @Override 127.17 + public boolean isCompound() { return false; } 127.18 + 127.19 + @Override 127.20 public <R, P> R accept(TypeVisitor<R, P> v, P p) { 127.21 return v.visitNoType(this, p); 127.22 } 127.23 @@ -1698,6 +1704,9 @@ 127.24 } 127.25 127.26 @Override 127.27 + public boolean isCompound() { return false; } 127.28 + 127.29 + @Override 127.30 public <R, P> R accept(TypeVisitor<R, P> v, P p) { 127.31 return v.visitNull(this, p); 127.32 }
128.1 --- a/src/share/classes/com/sun/tools/javac/code/Types.java Wed Oct 02 13:26:54 2013 -0700 128.2 +++ b/src/share/classes/com/sun/tools/javac/code/Types.java Tue Oct 08 14:59:46 2013 -0700 128.3 @@ -244,7 +244,7 @@ 128.4 public Type visitClassType(ClassType t, Symbol sym) { 128.5 if (t.tsym == sym) 128.6 return t; 128.7 - Type base = asSuper(sym.type, t.tsym); 128.8 + Type base = asSuper(sym.type, t); 128.9 if (base == null) 128.10 return null; 128.11 ListBuffer<Type> from = new ListBuffer<Type>(); 128.12 @@ -687,7 +687,7 @@ 128.13 (t.flags() & SYNTHETIC) == 0; 128.14 } 128.15 }; 128.16 - private boolean pendingBridges(ClassSymbol origin, TypeSymbol s) { 128.17 + private boolean pendingBridges(ClassSymbol origin, TypeSymbol sym) { 128.18 //a symbol will be completed from a classfile if (a) symbol has 128.19 //an associated file object with CLASS kind and (b) the symbol has 128.20 //not been entered 128.21 @@ -696,11 +696,11 @@ 128.22 enter.getEnv(origin) == null) { 128.23 return false; 128.24 } 128.25 - if (origin == s) { 128.26 + if (origin == sym) { 128.27 return true; 128.28 } 128.29 for (Type t : interfaces(origin.type)) { 128.30 - if (pendingBridges((ClassSymbol)t.tsym, s)) { 128.31 + if (pendingBridges((ClassSymbol)t.tsym, sym)) { 128.32 return true; 128.33 } 128.34 } 128.35 @@ -761,7 +761,7 @@ 128.36 } else if (t.hasTag(TYPEVAR)) { 128.37 return isSubtypeUnchecked(t.getUpperBound(), s, warn); 128.38 } else if (!s.isRaw()) { 128.39 - Type t2 = asSuper(t, s.tsym); 128.40 + Type t2 = asSuper(t, s); 128.41 if (t2 != null && t2.isRaw()) { 128.42 if (isReifiable(s)) { 128.43 warn.silentWarn(LintCategory.UNCHECKED); 128.44 @@ -914,7 +914,7 @@ 128.45 128.46 @Override 128.47 public Boolean visitClassType(ClassType t, Type s) { 128.48 - Type sup = asSuper(t, s.tsym); 128.49 + Type sup = asSuper(t, s); 128.50 return sup != null 128.51 && sup.tsym == s.tsym 128.52 // You're not allowed to write 128.53 @@ -1935,30 +1935,42 @@ 128.54 * @param t a type 128.55 * @param sym a symbol 128.56 */ 128.57 - public Type asSuper(Type t, Symbol sym) { 128.58 - return asSuper.visit(t, sym); 128.59 + public Type asSuper(Type t, Symbol s) { 128.60 + return asSuper(t, s.type); 128.61 + } 128.62 + 128.63 + public Type asSuper(Type t, Type s) { 128.64 + return asSuper.visit(t, s); 128.65 } 128.66 // where 128.67 - private SimpleVisitor<Type,Symbol> asSuper = new SimpleVisitor<Type,Symbol>() { 128.68 - 128.69 - public Type visitType(Type t, Symbol sym) { 128.70 + private SimpleVisitor<Type,Type> asSuper = new SimpleVisitor<Type,Type>() { 128.71 + 128.72 + public Type visitType(Type t, Type s) { 128.73 return null; 128.74 } 128.75 128.76 @Override 128.77 - public Type visitClassType(ClassType t, Symbol sym) { 128.78 - if (t.tsym == sym) 128.79 + public Type visitClassType(ClassType t, Type s) { 128.80 + if (t.tsym == s.tsym) 128.81 return t; 128.82 128.83 Type st = supertype(t); 128.84 - if (st.hasTag(CLASS) || st.hasTag(TYPEVAR) || st.hasTag(ERROR)) { 128.85 - Type x = asSuper(st, sym); 128.86 + 128.87 + switch(st.getTag()) { 128.88 + default: break; 128.89 + case CLASS: 128.90 + case ARRAY: 128.91 + case TYPEVAR: 128.92 + case ERROR: { 128.93 + Type x = asSuper(st, s); 128.94 if (x != null) 128.95 return x; 128.96 + } break; 128.97 } 128.98 - if ((sym.flags() & INTERFACE) != 0) { 128.99 + 128.100 + if ((s.tsym.flags() & INTERFACE) != 0) { 128.101 for (List<Type> l = interfaces(t); l.nonEmpty(); l = l.tail) { 128.102 - Type x = asSuper(l.head, sym); 128.103 + Type x = asSuper(l.head, s); 128.104 if (x != null) 128.105 return x; 128.106 } 128.107 @@ -1967,22 +1979,20 @@ 128.108 } 128.109 128.110 @Override 128.111 - public Type visitArrayType(ArrayType t, Symbol sym) { 128.112 - return isSubtype(t, sym.type) ? sym.type : null; 128.113 + public Type visitArrayType(ArrayType t, Type s) { 128.114 + return isSubtype(t, s) ? s : null; 128.115 } 128.116 128.117 @Override 128.118 - public Type visitTypeVar(TypeVar t, Symbol sym) { 128.119 - if (t.tsym == sym) 128.120 + public Type visitTypeVar(TypeVar t, Type s) { 128.121 + if (t.tsym == s.tsym) 128.122 return t; 128.123 else 128.124 - return asSuper(t.bound, sym); 128.125 + return asSuper(t.bound, s); 128.126 } 128.127 128.128 @Override 128.129 - public Type visitErrorType(ErrorType t, Symbol sym) { 128.130 - return t; 128.131 - } 128.132 + public Type visitErrorType(ErrorType t, Type s) { return t; } 128.133 }; 128.134 128.135 /** 128.136 @@ -3563,9 +3573,9 @@ 128.137 //step 3 - for each element G in MEC, compute lci(Inv(G)) 128.138 List<Type> candidates = List.nil(); 128.139 for (Type erasedSupertype : mec) { 128.140 - List<Type> lci = List.of(asSuper(ts.head, erasedSupertype.tsym)); 128.141 + List<Type> lci = List.of(asSuper(ts.head, erasedSupertype)); 128.142 for (Type t : ts) { 128.143 - lci = intersect(lci, List.of(asSuper(t, erasedSupertype.tsym))); 128.144 + lci = intersect(lci, List.of(asSuper(t, erasedSupertype))); 128.145 } 128.146 candidates = candidates.appendList(lci); 128.147 } 128.148 @@ -3985,7 +3995,7 @@ 128.149 // The arguments to the supers could be unified here to 128.150 // get a more accurate analysis 128.151 while (commonSupers.nonEmpty()) { 128.152 - Type t1 = asSuper(from, commonSupers.head.tsym); 128.153 + Type t1 = asSuper(from, commonSupers.head); 128.154 Type t2 = commonSupers.head; // same as asSuper(to, commonSupers.head.tsym); 128.155 if (disjointTypes(t1.getTypeArguments(), t2.getTypeArguments())) 128.156 return false; 128.157 @@ -4016,7 +4026,7 @@ 128.158 from = target; 128.159 } 128.160 Assert.check((from.tsym.flags() & FINAL) != 0); 128.161 - Type t1 = asSuper(from, to.tsym); 128.162 + Type t1 = asSuper(from, to); 128.163 if (t1 == null) return false; 128.164 Type t2 = to; 128.165 if (disjointTypes(t1.getTypeArguments(), t2.getTypeArguments()))
129.1 --- a/src/share/classes/com/sun/tools/javac/comp/Annotate.java Wed Oct 02 13:26:54 2013 -0700 129.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Annotate.java Tue Oct 08 14:59:46 2013 -0700 129.3 @@ -310,6 +310,7 @@ 129.4 Attribute enterAttributeValue(Type expected, 129.5 JCExpression tree, 129.6 Env<AttrContext> env) { 129.7 + Type original = expected; 129.8 //first, try completing the attribution value sym - if a completion 129.9 //error is thrown, we should recover gracefully, and display an 129.10 //ordinary resolution diagnostic. 129.11 @@ -317,7 +318,54 @@ 129.12 expected.tsym.complete(); 129.13 } catch(CompletionFailure e) { 129.14 log.error(tree.pos(), "cant.resolve", Kinds.kindName(e.sym), e.sym); 129.15 - return new Attribute.Error(expected); 129.16 + expected = syms.errType; 129.17 + } 129.18 + if (expected.hasTag(ARRAY)) { 129.19 + if (!tree.hasTag(NEWARRAY)) { 129.20 + tree = make.at(tree.pos). 129.21 + NewArray(null, List.<JCExpression>nil(), List.of(tree)); 129.22 + } 129.23 + JCNewArray na = (JCNewArray)tree; 129.24 + if (na.elemtype != null) { 129.25 + log.error(na.elemtype.pos(), "new.not.allowed.in.annotation"); 129.26 + } 129.27 + ListBuffer<Attribute> buf = new ListBuffer<Attribute>(); 129.28 + for (List<JCExpression> l = na.elems; l.nonEmpty(); l=l.tail) { 129.29 + buf.append(enterAttributeValue(types.elemtype(expected), 129.30 + l.head, 129.31 + env)); 129.32 + } 129.33 + na.type = expected; 129.34 + return new Attribute. 129.35 + Array(expected, buf.toArray(new Attribute[buf.length()])); 129.36 + } 129.37 + if (tree.hasTag(NEWARRAY)) { //error recovery 129.38 + if (!expected.isErroneous()) 129.39 + log.error(tree.pos(), "annotation.value.not.allowable.type"); 129.40 + JCNewArray na = (JCNewArray)tree; 129.41 + if (na.elemtype != null) { 129.42 + log.error(na.elemtype.pos(), "new.not.allowed.in.annotation"); 129.43 + } 129.44 + for (List<JCExpression> l = na.elems; l.nonEmpty(); l=l.tail) { 129.45 + enterAttributeValue(syms.errType, 129.46 + l.head, 129.47 + env); 129.48 + } 129.49 + return new Attribute.Error(original); 129.50 + } 129.51 + if ((expected.tsym.flags() & Flags.ANNOTATION) != 0) { 129.52 + if (tree.hasTag(ANNOTATION)) { 129.53 + return enterAnnotation((JCAnnotation)tree, expected, env); 129.54 + } else { 129.55 + log.error(tree.pos(), "annotation.value.must.be.annotation"); 129.56 + expected = syms.errType; 129.57 + } 129.58 + } 129.59 + if (tree.hasTag(ANNOTATION)) { //error recovery 129.60 + if (!expected.isErroneous()) 129.61 + log.error(tree.pos(), "annotation.not.valid.for.type", expected); 129.62 + enterAnnotation((JCAnnotation)tree, syms.errType, env); 129.63 + return new Attribute.Error(original); 129.64 } 129.65 if (expected.isPrimitive() || types.isSameType(expected, syms.stringType)) { 129.66 Type result = attr.attribExpr(tree, env, expected); 129.67 @@ -353,33 +401,6 @@ 129.68 return new Attribute.Class(types, 129.69 (((JCFieldAccess) tree).selected).type); 129.70 } 129.71 - if ((expected.tsym.flags() & Flags.ANNOTATION) != 0) { 129.72 - if (!tree.hasTag(ANNOTATION)) { 129.73 - log.error(tree.pos(), "annotation.value.must.be.annotation"); 129.74 - expected = syms.errorType; 129.75 - } 129.76 - return enterAnnotation((JCAnnotation)tree, expected, env); 129.77 - } 129.78 - if (expected.hasTag(ARRAY)) { // should really be isArray() 129.79 - if (!tree.hasTag(NEWARRAY)) { 129.80 - tree = make.at(tree.pos). 129.81 - NewArray(null, List.<JCExpression>nil(), List.of(tree)); 129.82 - } 129.83 - JCNewArray na = (JCNewArray)tree; 129.84 - if (na.elemtype != null) { 129.85 - log.error(na.elemtype.pos(), "new.not.allowed.in.annotation"); 129.86 - return new Attribute.Error(expected); 129.87 - } 129.88 - ListBuffer<Attribute> buf = new ListBuffer<Attribute>(); 129.89 - for (List<JCExpression> l = na.elems; l.nonEmpty(); l=l.tail) { 129.90 - buf.append(enterAttributeValue(types.elemtype(expected), 129.91 - l.head, 129.92 - env)); 129.93 - } 129.94 - na.type = expected; 129.95 - return new Attribute. 129.96 - Array(expected, buf.toArray(new Attribute[buf.length()])); 129.97 - } 129.98 if (expected.hasTag(CLASS) && 129.99 (expected.tsym.flags() & Flags.ENUM) != 0) { 129.100 attr.attribExpr(tree, env, expected); 129.101 @@ -394,6 +415,7 @@ 129.102 VarSymbol enumerator = (VarSymbol) sym; 129.103 return new Attribute.Enum(expected, enumerator); 129.104 } 129.105 + //error recovery: 129.106 if (!expected.isErroneous()) 129.107 log.error(tree.pos(), "annotation.value.not.allowable.type"); 129.108 return new Attribute.Error(attr.attribExpr(tree, env, expected));
130.1 --- a/src/share/classes/com/sun/tools/javac/comp/Attr.java Wed Oct 02 13:26:54 2013 -0700 130.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Attr.java Tue Oct 08 14:59:46 2013 -0700 130.3 @@ -58,6 +58,7 @@ 130.4 import static com.sun.tools.javac.code.Kinds.ERRONEOUS; 130.5 import static com.sun.tools.javac.code.TypeTag.*; 130.6 import static com.sun.tools.javac.code.TypeTag.WILDCARD; 130.7 +import static com.sun.tools.javac.code.TypeTag.ARRAY; 130.8 import static com.sun.tools.javac.tree.JCTree.Tag.*; 130.9 130.10 /** This is the main context-dependent analysis phase in GJC. It 130.11 @@ -797,28 +798,32 @@ 130.12 JCTree tree, 130.13 Env<AttrContext> env, 130.14 boolean classExpected, 130.15 - boolean interfaceExpected, 130.16 + boolean interfaceOrArrayExpected, 130.17 boolean checkExtensible) { 130.18 if (t.isErroneous()) 130.19 return t; 130.20 - if (t.hasTag(TYPEVAR) && !classExpected && !interfaceExpected) { 130.21 + if (t.hasTag(TYPEVAR) && !classExpected && !interfaceOrArrayExpected) { 130.22 // check that type variable is already visible 130.23 if (t.getUpperBound() == null) { 130.24 log.error(tree.pos(), "illegal.forward.ref"); 130.25 return types.createErrorType(t); 130.26 } 130.27 + } else if (classExpected) { 130.28 + t = chk.checkClassType(tree.pos(), t, checkExtensible|!allowGenerics); 130.29 } else { 130.30 - t = chk.checkClassType(tree.pos(), t, checkExtensible|!allowGenerics); 130.31 + t = chk.checkClassOrArrayType(tree.pos(), t, 130.32 + checkExtensible|!allowGenerics); 130.33 } 130.34 - if (interfaceExpected && (t.tsym.flags() & INTERFACE) == 0) { 130.35 + if (interfaceOrArrayExpected && 130.36 + !(t.tsym.isInterface() || t.getTag() == ARRAY)) { 130.37 log.error(tree.pos(), "intf.expected.here"); 130.38 // return errType is necessary since otherwise there might 130.39 // be undetected cycles which cause attribution to loop 130.40 return types.createErrorType(t); 130.41 } else if (checkExtensible && 130.42 classExpected && 130.43 - (t.tsym.flags() & INTERFACE) != 0) { 130.44 - log.error(tree.pos(), "no.intf.expected.here"); 130.45 + t.tsym.isInterface()) { 130.46 + log.error(tree.pos(), "no.intf.expected.here"); 130.47 return types.createErrorType(t); 130.48 } 130.49 if (checkExtensible && 130.50 @@ -829,6 +834,12 @@ 130.51 chk.checkNonCyclic(tree.pos(), t); 130.52 return t; 130.53 } 130.54 + //where 130.55 + private Object asTypeParam(Type t) { 130.56 + return (t.hasTag(TYPEVAR)) 130.57 + ? diags.fragment("type.parameter", t) 130.58 + : t; 130.59 + } 130.60 130.61 Type attribIdentAsEnumType(Env<AttrContext> env, JCIdent id) { 130.62 Assert.check((env.enclClass.sym.flags() & ENUM) != 0); 130.63 @@ -4058,8 +4069,7 @@ 130.64 } 130.65 130.66 public void visitAnnotation(JCAnnotation tree) { 130.67 - log.error(tree.pos(), "annotation.not.valid.for.type", pt()); 130.68 - result = tree.type = syms.errType; 130.69 + Assert.error("should be handled in Annotate"); 130.70 } 130.71 130.72 public void visitAnnotatedType(JCAnnotatedType tree) {
131.1 --- a/src/share/classes/com/sun/tools/javac/comp/Check.java Wed Oct 02 13:26:54 2013 -0700 131.2 +++ b/src/share/classes/com/sun/tools/javac/comp/Check.java Tue Oct 08 14:59:46 2013 -0700 131.3 @@ -706,6 +706,37 @@ 131.4 return t; 131.5 } 131.6 131.7 + // Analog of checkClassType that calls checkClassOrArrayType instead 131.8 + Type checkClassOrArrayType(DiagnosticPosition pos, 131.9 + Type t, boolean noBounds) { 131.10 + t = checkClassOrArrayType(pos, t); 131.11 + if (noBounds && t.isParameterized()) { 131.12 + List<Type> args = t.getTypeArguments(); 131.13 + while (args.nonEmpty()) { 131.14 + if (args.head.hasTag(WILDCARD)) 131.15 + return typeTagError(pos, 131.16 + diags.fragment("type.req.exact"), 131.17 + args.head); 131.18 + args = args.tail; 131.19 + } 131.20 + } 131.21 + return t; 131.22 + } 131.23 + 131.24 + /** Check that type is a reifiable class, interface or array type. 131.25 + * @param pos Position to be used for error reporting. 131.26 + * @param t The type to be checked. 131.27 + */ 131.28 + Type checkReifiableReferenceType(DiagnosticPosition pos, Type t) { 131.29 + t = checkClassOrArrayType(pos, t); 131.30 + if (!t.isErroneous() && !types.isReifiable(t)) { 131.31 + log.error(pos, "illegal.generic.type.for.instof"); 131.32 + return types.createErrorType(t); 131.33 + } else { 131.34 + return t; 131.35 + } 131.36 + } 131.37 + 131.38 /** Check that type is a reference type, i.e. a class, interface or array type 131.39 * or a type variable. 131.40 * @param pos Position to be used for error reporting. 131.41 @@ -2210,6 +2241,9 @@ 131.42 seen = seen.prepend(tv); 131.43 for (Type b : types.getBounds(tv)) 131.44 checkNonCyclic1(pos, b, seen); 131.45 + } else if (t.hasTag(ARRAY)) { 131.46 + final ArrayType at = (ArrayType)t.unannotatedType(); 131.47 + checkNonCyclic1(pos, at.elemtype, seen); 131.48 } 131.49 } 131.50
132.1 --- a/src/share/classes/com/sun/tools/javac/main/JavaCompiler.java Wed Oct 02 13:26:54 2013 -0700 132.2 +++ b/src/share/classes/com/sun/tools/javac/main/JavaCompiler.java Tue Oct 08 14:59:46 2013 -0700 132.3 @@ -1743,13 +1743,4 @@ 132.4 shouldStopPolicyIfError = prev.shouldStopPolicyIfError; 132.5 shouldStopPolicyIfNoError = prev.shouldStopPolicyIfNoError; 132.6 } 132.7 - 132.8 - public static void enableLogging() { 132.9 - Logger logger = Logger.getLogger(com.sun.tools.javac.Main.class.getPackage().getName()); 132.10 - logger.setLevel(Level.ALL); 132.11 - for (Handler h : logger.getParent().getHandlers()) { 132.12 - h.setLevel(Level.ALL); 132.13 - } 132.14 - 132.15 - } 132.16 }
133.1 --- a/src/share/classes/com/sun/tools/javac/parser/JavacParser.java Wed Oct 02 13:26:54 2013 -0700 133.2 +++ b/src/share/classes/com/sun/tools/javac/parser/JavacParser.java Tue Oct 08 14:59:46 2013 -0700 133.3 @@ -3002,8 +3002,9 @@ 133.4 int pos = token.pos; 133.5 Name name; 133.6 if (lambdaParameter && token.kind == UNDERSCORE) { 133.7 - syntaxError(pos, "expected", IDENTIFIER); 133.8 + log.error(pos, "underscore.as.identifier.in.lambda"); 133.9 name = token.name(); 133.10 + nextToken(); 133.11 } else { 133.12 if (allowThisIdent) { 133.13 JCExpression pn = qualident(false);
134.1 --- a/src/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java Wed Oct 02 13:26:54 2013 -0700 134.2 +++ b/src/share/classes/com/sun/tools/javac/processing/JavacProcessingEnvironment.java Tue Oct 08 14:59:46 2013 -0700 134.3 @@ -1034,6 +1034,13 @@ 134.4 } else { 134.5 discoverAndRunProcs(context, annotationsPresent, topLevelClasses, packageInfoFiles); 134.6 } 134.7 + } catch (Throwable t) { 134.8 + // we're specifically expecting Abort here, but if any Throwable 134.9 + // comes by, we should flush all deferred diagnostics, rather than 134.10 + // drop them on the ground. 134.11 + deferredDiagnosticHandler.reportDeferredDiagnostics(); 134.12 + log.popDiagnosticHandler(deferredDiagnosticHandler); 134.13 + throw t; 134.14 } finally { 134.15 if (!taskListener.isEmpty()) 134.16 taskListener.finished(new TaskEvent(TaskEvent.Kind.ANNOTATION_PROCESSING_ROUND));
135.1 --- a/src/share/classes/com/sun/tools/javac/resources/compiler.properties Wed Oct 02 13:26:54 2013 -0700 135.2 +++ b/src/share/classes/com/sun/tools/javac/resources/compiler.properties Tue Oct 08 14:59:46 2013 -0700 135.3 @@ -2224,6 +2224,10 @@ 135.4 ''_'' used as an identifier\n\ 135.5 (use of ''_'' as an identifier might not be supported in releases after Java SE 8) 135.6 135.7 +compiler.err.underscore.as.identifier.in.lambda=\ 135.8 + ''_'' used as an identifier\n\ 135.9 + (use of ''_'' as an identifier is forbidden for lambda parameters) 135.10 + 135.11 compiler.err.enum.as.identifier=\ 135.12 as of release 5, ''enum'' is a keyword, and may not be used as an identifier\n\ 135.13 (use -source 1.4 or lower to use ''enum'' as an identifier)
136.1 --- a/src/share/classes/com/sun/tools/javac/sym/CreateSymbols.java Wed Oct 02 13:26:54 2013 -0700 136.2 +++ b/src/share/classes/com/sun/tools/javac/sym/CreateSymbols.java Tue Oct 08 14:59:46 2013 -0700 136.3 @@ -107,15 +107,21 @@ 136.4 if (renv.processingOver()) 136.5 createSymbols(); 136.6 } catch (IOException e) { 136.7 + CharSequence msg = e.getLocalizedMessage(); 136.8 + if (msg == null) 136.9 + msg = e.toString(); 136.10 processingEnv.getMessager() 136.11 - .printMessage(Diagnostic.Kind.ERROR, e.getLocalizedMessage()); 136.12 + .printMessage(Diagnostic.Kind.ERROR, msg); 136.13 } catch (Throwable t) { 136.14 t.printStackTrace(); 136.15 Throwable cause = t.getCause(); 136.16 if (cause == null) 136.17 cause = t; 136.18 + CharSequence msg = cause.getLocalizedMessage(); 136.19 + if (msg == null) 136.20 + msg = cause.toString(); 136.21 processingEnv.getMessager() 136.22 - .printMessage(Diagnostic.Kind.ERROR, cause.getLocalizedMessage()); 136.23 + .printMessage(Diagnostic.Kind.ERROR, msg); 136.24 } 136.25 return true; 136.26 }
137.1 --- a/src/share/classes/com/sun/tools/javap/ClassWriter.java Wed Oct 02 13:26:54 2013 -0700 137.2 +++ b/src/share/classes/com/sun/tools/javap/ClassWriter.java Tue Oct 08 14:59:46 2013 -0700 137.3 @@ -232,6 +232,12 @@ 137.4 return t.accept(this, new StringBuilder()).toString(); 137.5 } 137.6 137.7 + String printTypeArgs(List<? extends TypeParamType> typeParamTypes) { 137.8 + StringBuilder builder = new StringBuilder(); 137.9 + appendIfNotEmpty(builder, "<", typeParamTypes, "> "); 137.10 + return builder.toString(); 137.11 + } 137.12 + 137.13 public StringBuilder visitSimpleType(SimpleType type, StringBuilder sb) { 137.14 sb.append(getJavaName(type.name)); 137.15 return sb; 137.16 @@ -438,7 +444,7 @@ 137.17 137.18 writeModifiers(flags.getMethodModifiers()); 137.19 if (methodType != null) { 137.20 - writeListIfNotEmpty("<", methodType.typeParamTypes, "> "); 137.21 + print(new JavaTypePrinter(false).printTypeArgs(methodType.typeParamTypes)); 137.22 } 137.23 if (getName(m).equals("<init>")) { 137.24 print(getJavaName(classFile));
138.1 --- a/src/share/classes/javax/lang/model/element/Element.java Wed Oct 02 13:26:54 2013 -0700 138.2 +++ b/src/share/classes/javax/lang/model/element/Element.java Tue Oct 08 14:59:46 2013 -0700 138.3 @@ -202,6 +202,7 @@ 138.4 * @return {@code true} if the specified object represents the same 138.5 * element as this 138.6 */ 138.7 + @Override 138.8 boolean equals(Object obj); 138.9 138.10 /** 138.11 @@ -209,6 +210,7 @@ 138.12 * 138.13 * @see #equals 138.14 */ 138.15 + @Override 138.16 int hashCode(); 138.17 138.18 138.19 @@ -219,11 +221,18 @@ 138.20 * Elements#getAllAnnotationMirrors(Element) 138.21 * getAllAnnotationMirrors}. 138.22 * 138.23 - * @see ElementFilter 138.24 * @since 1.6 138.25 */ 138.26 @Override 138.27 List<? extends AnnotationMirror> getAnnotationMirrors(); 138.28 + 138.29 + /** 138.30 + * {@inheritDoc} 138.31 + * @since 1.6 138.32 + */ 138.33 + @Override 138.34 + <A extends Annotation> A getAnnotation(Class<A> annotationType); 138.35 + 138.36 /** 138.37 * Applies a visitor to this element. 138.38 *
139.1 --- a/src/share/classes/javax/tools/Diagnostic.java Wed Oct 02 13:26:54 2013 -0700 139.2 +++ b/src/share/classes/javax/tools/Diagnostic.java Tue Oct 08 14:59:46 2013 -0700 139.3 @@ -1,5 +1,5 @@ 139.4 /* 139.5 - * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 139.6 + * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved. 139.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 139.8 * 139.9 * This code is free software; you can redistribute it and/or modify it 139.10 @@ -49,6 +49,15 @@ 139.11 139.12 /** 139.13 * Kinds of diagnostics, for example, error or warning. 139.14 + * 139.15 + * The kind of a diagnostic can be used to determine how the 139.16 + * diagnostic should be presented to the user. For example, 139.17 + * errors might be colored red or prefixed with the word "Error", 139.18 + * while warnings might be colored yellow or prefixed with the 139.19 + * word "Warning". There is no requirement that the Kind 139.20 + * should imply any inherent semantic meaning to the message 139.21 + * of the diagnostic: for example, a tool might provide an 139.22 + * option to report all warnings as errors. 139.23 */ 139.24 enum Kind { 139.25 /** 139.26 @@ -63,7 +72,7 @@ 139.27 /** 139.28 * Problem similar to a warning, but is mandated by the tool's 139.29 * specification. For example, the Java™ Language 139.30 - * Specification, 3rd Ed. mandates warnings on certain 139.31 + * Specification mandates warnings on certain 139.32 * unchecked operations and the use of deprecated methods. 139.33 */ 139.34 MANDATORY_WARNING,
140.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 140.2 +++ b/src/share/classes/jdk/Exported.java Tue Oct 08 14:59:46 2013 -0700 140.3 @@ -0,0 +1,54 @@ 140.4 +/* 140.5 + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 140.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 140.7 + * 140.8 + * This code is free software; you can redistribute it and/or modify it 140.9 + * under the terms of the GNU General Public License version 2 only, as 140.10 + * published by the Free Software Foundation. Oracle designates this 140.11 + * particular file as subject to the "Classpath" exception as provided 140.12 + * by Oracle in the LICENSE file that accompanied this code. 140.13 + * 140.14 + * This code is distributed in the hope that it will be useful, but WITHOUT 140.15 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 140.16 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 140.17 + * version 2 for more details (a copy is included in the LICENSE file that 140.18 + * accompanied this code). 140.19 + * 140.20 + * You should have received a copy of the GNU General Public License version 140.21 + * 2 along with this work; if not, write to the Free Software Foundation, 140.22 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 140.23 + * 140.24 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 140.25 + * or visit www.oracle.com if you need additional information or have any 140.26 + * questions. 140.27 + */ 140.28 + 140.29 +package jdk; 140.30 + 140.31 +import java.lang.annotation.*; 140.32 + 140.33 +/** 140.34 + * Indicates whether or not a JDK specific type or package is an 140.35 + * exported part of the JDK suitable for use outside of the JDK 140.36 + * implementation itself. 140.37 + * 140.38 + * This annotation should only be applied to types and packages 140.39 + * <em>outside</em> of the Java SE namespaces of {@code java.*} and 140.40 + * {@code javax.*} packages. For example, certain portions of {@code 140.41 + * com.sun.*} are official parts of the JDK meant to be generally 140.42 + * usable while other portions of {@code com.sun.*} are not. This 140.43 + * annotation type allows those portions to be easily and 140.44 + * programmaticly distinguished. 140.45 + * 140.46 + * @since 1.8 140.47 + */ 140.48 +@Documented 140.49 +@Retention(RetentionPolicy.RUNTIME) 140.50 +@Target({ElementType.TYPE, ElementType.PACKAGE}) 140.51 +@Exported 140.52 +public @interface Exported { 140.53 + /** 140.54 + * Whether or not the annotated type or package is an exported part of the JDK. 140.55 + */ 140.56 + boolean value() default true; 140.57 +}
141.1 --- a/src/share/classes/jdk/Supported.java Wed Oct 02 13:26:54 2013 -0700 141.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 141.3 @@ -1,53 +0,0 @@ 141.4 -/* 141.5 - * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 141.6 - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 141.7 - * 141.8 - * This code is free software; you can redistribute it and/or modify it 141.9 - * under the terms of the GNU General Public License version 2 only, as 141.10 - * published by the Free Software Foundation. Oracle designates this 141.11 - * particular file as subject to the "Classpath" exception as provided 141.12 - * by Oracle in the LICENSE file that accompanied this code. 141.13 - * 141.14 - * This code is distributed in the hope that it will be useful, but WITHOUT 141.15 - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 141.16 - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 141.17 - * version 2 for more details (a copy is included in the LICENSE file that 141.18 - * accompanied this code). 141.19 - * 141.20 - * You should have received a copy of the GNU General Public License version 141.21 - * 2 along with this work; if not, write to the Free Software Foundation, 141.22 - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 141.23 - * 141.24 - * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 141.25 - * or visit www.oracle.com if you need additional information or have any 141.26 - * questions. 141.27 - */ 141.28 - 141.29 -package jdk; 141.30 - 141.31 -import java.lang.annotation.*; 141.32 - 141.33 -/** 141.34 - * Indicates whether or not a JDK specific type or package is a 141.35 - * supported part of the JDK. 141.36 - * 141.37 - * This annotation should only be applied to types and packages 141.38 - * <em>outside</em> of the Java SE namespaces of {@code java.*} and 141.39 - * {@code javax.*} packages. For example, certain portions of {@code 141.40 - * com.sun.*} are official parts of the JDK meant to be generally 141.41 - * usable while other portions of {@code com.sun.*} are not. This 141.42 - * annotation type allows those portions to be easily and 141.43 - * programmaticly distinguished. 141.44 - * 141.45 - * @since 1.8 141.46 - */ 141.47 -@Documented 141.48 -@Retention(RetentionPolicy.RUNTIME) 141.49 -@Target({ElementType.TYPE, ElementType.PACKAGE}) 141.50 -@Supported 141.51 -public @interface Supported { 141.52 - /** 141.53 - * Whether or not this package or type is a supported part of the JDK. 141.54 - */ 141.55 - boolean value() default true; 141.56 -}
142.1 --- a/test/Makefile Wed Oct 02 13:26:54 2013 -0700 142.2 +++ b/test/Makefile Tue Oct 08 14:59:46 2013 -0700 142.3 @@ -7,7 +7,7 @@ 142.4 # A full product build (or "control" build) creates a complete JDK image. 142.5 # To test a product build, set TESTJAVA to the path for the image. 142.6 # 142.7 -# A langtools build just builds the langtools components of a JDK. 142.8 +# A langtools build just builds the langtools components of a JDK. 142.9 # To test a langtools build, set TESTJAVA to the path for a recent JDK 142.10 # build, and set TESTBOOTCLASSPATH to the compiled langtools classes -- 142.11 # for example build/classes or dist/lib/classes.jar. 142.12 @@ -122,10 +122,10 @@ 142.13 TESTJAVA = $(SLASH_JAVA)/re/jdk/1.7.0/promoted/latest/binaries/$(PLATFORM)-$(ARCH) 142.14 endif 142.15 142.16 -# PRODUCT_HOME is a JPRT variable pointing to a directory containing the output from 142.17 +# PRODUCT_HOME is a JPRT variable pointing to a directory containing the output from 142.18 # make/Makefile 142.19 # For langtools, this is a directory containing build and dist 142.20 -# For a control build, this is build/$(PRODUCT)-$(ARCH)/XYZ-image 142.21 +# For a control build, this is build/$(PRODUCT)-$(ARCH)/XYZ-image 142.22 # (i.e, j2sdk-image or jdk-module-image) 142.23 ifdef PRODUCT_HOME 142.24 ifeq ($(shell [ -r $(PRODUCT_HOME)/dist/lib/classes.jar ]; echo $$?),0) 142.25 @@ -139,13 +139,13 @@ 142.26 ifdef TESTBOOTCLASSPATH 142.27 JTREG_OPTIONS += -Xbootclasspath/p:$(TESTBOOTCLASSPATH) 142.28 ### In the following, -refvmoptions is an undocumented option 142.29 -### The following does not work JCK 7 b30 2/6/2010. Awaiting b31. 142.30 +### The following does not work JCK 7 b30 2/6/2010. Awaiting b31. 142.31 JCK_OPTIONS += \ 142.32 -vmoptions:-Xbootclasspath/p:$(TESTBOOTCLASSPATH) \ 142.33 -refvmoptions:-Xbootclasspath/p:$(TESTBOOTCLASSPATH) 142.34 endif 142.35 142.36 -# Concurrency is the number of tests that can execute at once. 142.37 +# Concurrency is the number of tests that can execute at once. 142.38 # On an otherwise empty machine, suggest setting to (#cpus + 2) 142.39 # If unset, the default is (#cpus) 142.40 ### RFE: determine and use #cpus 142.41 @@ -206,7 +206,7 @@ 142.42 # Exit -- used for final "normal" exit from "make". Redefine to "true" to avoid 142.43 # having make exit with non-zero return code. 142.44 EXIT = exit 142.45 -# Function to exit shell if exit code of preceding command is greater than or equal 142.46 +# Function to exit shell if exit code of preceding command is greater than or equal 142.47 # to a given level. Redefine function or preceding FATAL_*_EXIT codes as needed. 142.48 EXIT_IF_FATAL = status=$$?; if [ $$status -ge $(1) ]; then exit $$status ; fi 142.49 142.50 @@ -217,8 +217,8 @@ 142.51 # Root of all test results 142.52 TEST_OUTPUT_DIR = $(TEST_ROOT)/../build/$(PLATFORM)-$(ARCH)/test/langtools 142.53 ABS_TEST_OUTPUT_DIR := \ 142.54 - $(shell mkdir -p $(TEST_ROOT)/../build/$(PLATFORM)-$(ARCH)/test/langtools; \ 142.55 - cd $(TEST_ROOT)/../build/$(PLATFORM)-$(ARCH)/test/langtools; \ 142.56 + $(shell mkdir -p $(TEST_OUTPUT_DIR); \ 142.57 + cd $(TEST_OUTPUT_DIR); \ 142.58 pwd $(CYGPATH)) 142.59 # Subdirectories for different test runs 142.60 JTREG_OUTPUT_DIR = $(ABS_TEST_OUTPUT_DIR)/jtreg 142.61 @@ -255,7 +255,7 @@ 142.62 # JT_JAVA 142.63 # Version of java used to run jtreg. Should normally be the same as TESTJAVA 142.64 # TESTJAVA 142.65 -# Version of java to be tested. 142.66 +# Version of java to be tested. 142.67 # JTREG_OPTIONS 142.68 # Additional options for jtreg 142.69 # JTREG_TESTDIRS 142.70 @@ -311,7 +311,7 @@ 142.71 # Version of java used to run JCK. Should normally be the same as TESTJAVA 142.72 # Default is JDK 7 142.73 # TESTJAVA 142.74 -# Version of java to be tested. 142.75 +# Version of java to be tested. 142.76 # JCK_COMPILER_OPTIONS 142.77 # Additional options for JCK-compiler 142.78 # JCK_COMPILER_TESTDIRS 142.79 @@ -360,7 +360,7 @@ 142.80 # JT_JAVA 142.81 # Version of java used to run JCK. Should normally be the same as TESTJAVA 142.82 # TESTJAVA 142.83 -# Version of java to be tested. 142.84 +# Version of java to be tested. 142.85 # JCK_RUNTIME_OPTIONS 142.86 # Additional options for JCK-runtime 142.87 # JCK_RUNTIME_TESTDIRS
143.1 --- a/test/com/sun/javadoc/JavascriptWinTitle/JavascriptWinTitle.java Wed Oct 02 13:26:54 2013 -0700 143.2 +++ b/test/com/sun/javadoc/JavascriptWinTitle/JavascriptWinTitle.java Tue Oct 08 14:59:46 2013 -0700 143.3 @@ -1,5 +1,5 @@ 143.4 /* 143.5 - * Copyright (c) 2002, 2010, Oracle and/or its affiliates. All rights reserved. 143.6 + * Copyright (c) 2002, 2013, Oracle and/or its affiliates. All rights reserved. 143.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 143.8 * 143.9 * This code is free software; you can redistribute it and/or modify it 143.10 @@ -23,7 +23,7 @@ 143.11 143.12 /* 143.13 * @test 143.14 - * @bug 4645058 4747738 4855054 143.15 + * @bug 4645058 4747738 4855054 8024756 143.16 * @summary Javascript IE load error when linked by -linkoffline 143.17 * Window title shouldn't change when loading left frames (javascript) 143.18 * @author dkramer 143.19 @@ -115,9 +115,13 @@ 143.20 143.21 // Test that win title javascript is followed by NOSCRIPT code. 143.22 {"<script type=\"text/javascript\"><!--" + LS + 143.23 - " if (location.href.indexOf('is-external=true') == -1) {" + LS + 143.24 - " parent.document.title=\"C (Window Title)\";" + LS + 143.25 - " }" + LS + "//-->" + LS + "</script>", 143.26 + " try {" + LS + 143.27 + " if (location.href.indexOf('is-external=true') == -1) {" + LS + 143.28 + " parent.document.title=\"C (Window Title)\";" + LS + 143.29 + " }" + LS + 143.30 + " }" + LS + 143.31 + " catch(err) {" + LS + 143.32 + " }" + LS + "//-->" + LS + "</script>", 143.33 TMPDEST_DIR1 + FS + "p1" + FS + "C.html" 143.34 } 143.35
144.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 144.2 +++ b/test/com/sun/javadoc/testHtmlTableStyles/TestHtmlTableStyles.java Tue Oct 08 14:59:46 2013 -0700 144.3 @@ -0,0 +1,110 @@ 144.4 +/* 144.5 + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 144.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 144.7 + * 144.8 + * This code is free software; you can redistribute it and/or modify it 144.9 + * under the terms of the GNU General Public License version 2 only, as 144.10 + * published by the Free Software Foundation. 144.11 + * 144.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 144.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 144.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 144.15 + * version 2 for more details (a copy is included in the LICENSE file that 144.16 + * accompanied this code). 144.17 + * 144.18 + * You should have received a copy of the GNU General Public License version 144.19 + * 2 along with this work; if not, write to the Free Software Foundation, 144.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 144.21 + * 144.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 144.23 + * or visit www.oracle.com if you need additional information or have any 144.24 + * questions. 144.25 + */ 144.26 + 144.27 +/* 144.28 + * @test 144.29 + * @bug 8008164 144.30 + * @summary Test styles on HTML tables generated by javadoc. 144.31 + * @author Bhavesh Patel 144.32 + * @library ../lib/ 144.33 + * @build JavadocTester TestHtmlTableStyles 144.34 + * @run main TestHtmlTableStyles 144.35 + */ 144.36 + 144.37 +public class TestHtmlTableStyles extends JavadocTester { 144.38 + 144.39 + private static final String BUG_ID = "8008164"; 144.40 + 144.41 + //Input for string search tests. 144.42 + private static final String[][] TEST = { 144.43 + {BUG_ID + FS + "pkg1" + FS + "TestTable.html", 144.44 + "<table border cellpadding=3 cellspacing=1>" 144.45 + }, 144.46 + {BUG_ID + FS + "pkg1" + FS + "TestTable.html", 144.47 + "<table class=\"memberSummary\" border=\"0\" cellpadding=\"3\" " + 144.48 + "cellspacing=\"0\" summary=\"Field Summary table, listing fields, " + 144.49 + "and an explanation\">" 144.50 + }, 144.51 + {BUG_ID + FS + "pkg1" + FS + "TestTable.html", 144.52 + "<table class=\"memberSummary\" border=\"0\" cellpadding=\"3\" " + 144.53 + "cellspacing=\"0\" summary=\"Constructor Summary table, listing " + 144.54 + "constructors, and an explanation\">" 144.55 + }, 144.56 + {BUG_ID + FS + "pkg1" + FS + "TestTable.html", 144.57 + "<table class=\"memberSummary\" border=\"0\" cellpadding=\"3\" " + 144.58 + "cellspacing=\"0\" summary=\"Method Summary table, listing methods, " + 144.59 + "and an explanation\">" 144.60 + }, 144.61 + {BUG_ID + FS + "pkg1" + FS + "package-summary.html", 144.62 + "<table class=\"typeSummary\" border=\"0\" cellpadding=\"3\" " + 144.63 + "cellspacing=\"0\" summary=\"Class Summary table, listing classes, " + 144.64 + "and an explanation\">" 144.65 + }, 144.66 + {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "TestTable.html", 144.67 + "<table class=\"useSummary\" border=\"0\" cellpadding=\"3\" " + 144.68 + "cellspacing=\"0\" summary=\"Use table, listing fields, and an explanation\">" 144.69 + }, 144.70 + {BUG_ID + FS + "overview-summary.html", 144.71 + "<table class=\"overviewSummary\" border=\"0\" cellpadding=\"3\" " + 144.72 + "cellspacing=\"0\" summary=\"Packages table, listing packages, and an explanation\">" 144.73 + }, 144.74 + {BUG_ID + FS + "deprecated-list.html", 144.75 + "<table class=\"deprecatedSummary\" border=\"0\" cellpadding=\"3\" " + 144.76 + "cellspacing=\"0\" summary=\"Deprecated Methods table, listing " + 144.77 + "deprecated methods, and an explanation\">" 144.78 + }, 144.79 + {BUG_ID + FS + "constant-values.html", 144.80 + "<table class=\"constantsSummary\" border=\"0\" cellpadding=\"3\" " + 144.81 + "cellspacing=\"0\" summary=\"Constant Field Values table, listing " + 144.82 + "constant fields, and values\">" 144.83 + }, 144.84 + }; 144.85 + 144.86 + private static final String[] ARGS = new String[] { 144.87 + "-d", BUG_ID, "-sourcepath", SRC_DIR, "-use", "pkg1", "pkg2" 144.88 + }; 144.89 + 144.90 + /** 144.91 + * The entry point of the test. 144.92 + * @param args the array of command line arguments. 144.93 + */ 144.94 + public static void main(String[] args) throws Exception { 144.95 + TestHtmlTableStyles tester = new TestHtmlTableStyles(); 144.96 + run(tester, ARGS, TEST, NO_TEST); 144.97 + tester.printSummary(); 144.98 + } 144.99 + 144.100 + /** 144.101 + * {@inheritDoc} 144.102 + */ 144.103 + public String getBugId() { 144.104 + return BUG_ID; 144.105 + } 144.106 + 144.107 + /** 144.108 + * {@inheritDoc} 144.109 + */ 144.110 + public String getBugName() { 144.111 + return getClass().getName(); 144.112 + } 144.113 +}
145.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 145.2 +++ b/test/com/sun/javadoc/testHtmlTableStyles/pkg1/TestTable.java Tue Oct 08 14:59:46 2013 -0700 145.3 @@ -0,0 +1,84 @@ 145.4 +/* 145.5 + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 145.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 145.7 + * 145.8 + * This code is free software; you can redistribute it and/or modify it 145.9 + * under the terms of the GNU General Public License version 2 only, as 145.10 + * published by the Free Software Foundation. 145.11 + * 145.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 145.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 145.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 145.15 + * version 2 for more details (a copy is included in the LICENSE file that 145.16 + * accompanied this code). 145.17 + * 145.18 + * You should have received a copy of the GNU General Public License version 145.19 + * 2 along with this work; if not, write to the Free Software Foundation, 145.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 145.21 + * 145.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 145.23 + * or visit www.oracle.com if you need additional information or have any 145.24 + * questions. 145.25 + */ 145.26 + 145.27 +package pkg1; 145.28 + 145.29 +/** 145.30 + * Testing table in documentation comment. In the generated documentation, it 145.31 + * should be displayed as a regular table and not have any styles that the javadoc 145.32 + * generated tables have. 145.33 + * 145.34 + * <table border cellpadding=3 cellspacing=1> 145.35 + * <caption>Summary of test table</caption> 145.36 + * <tr> 145.37 + * <td></td> 145.38 + * <td align=center colspan = 2> First Element (Head)</td> 145.39 + * <td align=center colspan = 2> Last Element (Tail)</td> 145.40 + * </tr> 145.41 + * <tr> 145.42 + * <td></td> 145.43 + * <td align=center><em>Throws exception</em></td> 145.44 + * <td align=center><em>Special value</em></td> 145.45 + * <td align=center><em>Throws exception</em></td> 145.46 + * <td align=center><em>Special value</em></td> 145.47 + * </tr> 145.48 + * <tr> 145.49 + * <td>Insert</td> 145.50 + * <td>addFirst(e)</td> 145.51 + * <td>offerFirst(e)</td> 145.52 + * <td>addLast(e)</td> 145.53 + * <td>offerLast(e)</td> 145.54 + * </tr> 145.55 + * <tr> 145.56 + * <td>Remove</td> 145.57 + * <td>removeFirst()</td> 145.58 + * <td>pollFirst()</td> 145.59 + * <td>removeLast()</td> 145.60 + * <td>pollLast()</td> 145.61 + * </tr> 145.62 + * </table> 145.63 + */ 145.64 +public class TestTable 145.65 +{ 145.66 + /** 145.67 + * Field in Class. 145.68 + */ 145.69 + public String field; 145.70 + 145.71 + /** 145.72 + * Field constant in Class. 145.73 + */ 145.74 + public static final int fieldCnst = 0; 145.75 + 145.76 + /** 145.77 + * Method in Class. 145.78 + */ 145.79 + public void methodInClass(int i) {} 145.80 + 145.81 + /** 145.82 + * Deprecated method in Class. 145.83 + * @deprecated Do not use it. 145.84 + */ 145.85 + public void deprMethod() {} 145.86 + 145.87 +}
146.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 146.2 +++ b/test/com/sun/javadoc/testHtmlTableStyles/pkg2/TestUse.java Tue Oct 08 14:59:46 2013 -0700 146.3 @@ -0,0 +1,34 @@ 146.4 +/* 146.5 + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 146.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 146.7 + * 146.8 + * This code is free software; you can redistribute it and/or modify it 146.9 + * under the terms of the GNU General Public License version 2 only, as 146.10 + * published by the Free Software Foundation. 146.11 + * 146.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 146.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 146.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 146.15 + * version 2 for more details (a copy is included in the LICENSE file that 146.16 + * accompanied this code). 146.17 + * 146.18 + * You should have received a copy of the GNU General Public License version 146.19 + * 2 along with this work; if not, write to the Free Software Foundation, 146.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 146.21 + * 146.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 146.23 + * or visit www.oracle.com if you need additional information or have any 146.24 + * questions. 146.25 + */ 146.26 + 146.27 +package pkg2; 146.28 + 146.29 +import pkg1.*; 146.30 + 146.31 +/** 146.32 + * Testing use of TestTable. 146.33 + */ 146.34 +public class TestUse 146.35 +{ 146.36 + public TestTable tTable; 146.37 +}
147.1 --- a/test/com/sun/javadoc/testHtmlTableTags/TestHtmlTableTags.java Wed Oct 02 13:26:54 2013 -0700 147.2 +++ b/test/com/sun/javadoc/testHtmlTableTags/TestHtmlTableTags.java Tue Oct 08 14:59:46 2013 -0700 147.3 @@ -1,5 +1,5 @@ 147.4 /* 147.5 - * Copyright (c) 2009, 2012, Oracle and/or its affiliates. All rights reserved. 147.6 + * Copyright (c) 2009, 2013, Oracle and/or its affiliates. All rights reserved. 147.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 147.8 * 147.9 * This code is free software; you can redistribute it and/or modify it 147.10 @@ -23,7 +23,7 @@ 147.11 147.12 /* 147.13 * @test 147.14 - * @bug 6786688 147.15 + * @bug 6786688 8008164 147.16 * @summary HTML tables should have table summary, caption and table headers. 147.17 * @author Bhavesh Patel 147.18 * @library ../lib/ 147.19 @@ -50,121 +50,121 @@ 147.20 147.21 //Package summary 147.22 {BUG_ID + FS + "pkg1" + FS + "package-summary.html", 147.23 - "<table class=\"packageSummary\" border=\"0\" cellpadding=\"3\"" + 147.24 + "<table class=\"typeSummary\" border=\"0\" cellpadding=\"3\"" + 147.25 " cellspacing=\"0\" summary=\"Class Summary table, " + 147.26 "listing classes, and an explanation\">" 147.27 }, 147.28 {BUG_ID + FS + "pkg1" + FS + "package-summary.html", 147.29 - "<table class=\"packageSummary\" border=\"0\" cellpadding=\"3\"" + 147.30 + "<table class=\"typeSummary\" border=\"0\" cellpadding=\"3\"" + 147.31 " cellspacing=\"0\" summary=\"Interface Summary table, " + 147.32 "listing interfaces, and an explanation\">" 147.33 }, 147.34 {BUG_ID + FS + "pkg2" + FS + "package-summary.html", 147.35 - "<table class=\"packageSummary\" border=\"0\" cellpadding=\"3\"" + 147.36 + "<table class=\"typeSummary\" border=\"0\" cellpadding=\"3\"" + 147.37 " cellspacing=\"0\" summary=\"Enum Summary table, " + 147.38 "listing enums, and an explanation\">" 147.39 }, 147.40 {BUG_ID + FS + "pkg2" + FS + "package-summary.html", 147.41 - "<table class=\"packageSummary\" border=\"0\" cellpadding=\"3\"" + 147.42 + "<table class=\"typeSummary\" border=\"0\" cellpadding=\"3\"" + 147.43 " cellspacing=\"0\" summary=\"Annotation Types Summary table, " + 147.44 "listing annotation types, and an explanation\">" 147.45 }, 147.46 // Class documentation 147.47 {BUG_ID + FS + "pkg1" + FS + "C1.html", 147.48 - "<table class=\"overviewSummary\" border=\"0\" cellpadding=\"3\" " + 147.49 + "<table class=\"memberSummary\" border=\"0\" cellpadding=\"3\" " + 147.50 "cellspacing=\"0\" summary=\"Field Summary table, listing fields, " + 147.51 "and an explanation\">" 147.52 }, 147.53 {BUG_ID + FS + "pkg1" + FS + "C1.html", 147.54 - "<table class=\"overviewSummary\" border=\"0\" cellpadding=\"3\" " + 147.55 + "<table class=\"memberSummary\" border=\"0\" cellpadding=\"3\" " + 147.56 "cellspacing=\"0\" summary=\"Method Summary table, listing methods, " + 147.57 "and an explanation\">" 147.58 }, 147.59 {BUG_ID + FS + "pkg2" + FS + "C2.html", 147.60 - "<table class=\"overviewSummary\" border=\"0\" cellpadding=\"3\" " + 147.61 + "<table class=\"memberSummary\" border=\"0\" cellpadding=\"3\" " + 147.62 "cellspacing=\"0\" summary=\"Nested Class Summary table, listing " + 147.63 "nested classes, and an explanation\">" 147.64 }, 147.65 {BUG_ID + FS + "pkg2" + FS + "C2.html", 147.66 - "<table class=\"overviewSummary\" border=\"0\" cellpadding=\"3\" " + 147.67 + "<table class=\"memberSummary\" border=\"0\" cellpadding=\"3\" " + 147.68 "cellspacing=\"0\" summary=\"Constructor Summary table, listing " + 147.69 "constructors, and an explanation\">" 147.70 }, 147.71 {BUG_ID + FS + "pkg2" + FS + "C2.ModalExclusionType.html", 147.72 - "<table class=\"overviewSummary\" border=\"0\" cellpadding=\"3\" " + 147.73 + "<table class=\"memberSummary\" border=\"0\" cellpadding=\"3\" " + 147.74 "cellspacing=\"0\" summary=\"Enum Constant Summary table, listing " + 147.75 "enum constants, and an explanation\">" 147.76 }, 147.77 {BUG_ID + FS + "pkg2" + FS + "C3.html", 147.78 - "<table class=\"overviewSummary\" border=\"0\" cellpadding=\"3\" " + 147.79 + "<table class=\"memberSummary\" border=\"0\" cellpadding=\"3\" " + 147.80 "cellspacing=\"0\" summary=\"Required Element Summary table, " + 147.81 "listing required elements, and an explanation\">" 147.82 }, 147.83 {BUG_ID + FS + "pkg2" + FS + "C4.html", 147.84 - "<table class=\"overviewSummary\" border=\"0\" cellpadding=\"3\" " + 147.85 + "<table class=\"memberSummary\" border=\"0\" cellpadding=\"3\" " + 147.86 "cellspacing=\"0\" summary=\"Optional Element Summary table, " + 147.87 "listing optional elements, and an explanation\">" 147.88 }, 147.89 // Class use documentation 147.90 {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "I1.html", 147.91 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.92 + "<table class=\"useSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.93 "table, listing packages, and an explanation\">" 147.94 }, 147.95 {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html", 147.96 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.97 + "<table class=\"useSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.98 "table, listing fields, and an explanation\">" 147.99 }, 147.100 {BUG_ID + FS + "pkg1" + FS + "class-use" + FS + "C1.html", 147.101 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.102 + "<table class=\"useSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.103 "table, listing methods, and an explanation\">" 147.104 }, 147.105 {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html", 147.106 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.107 + "<table class=\"useSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.108 "table, listing fields, and an explanation\">" 147.109 }, 147.110 {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.html", 147.111 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.112 + "<table class=\"useSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.113 "table, listing methods, and an explanation\">" 147.114 }, 147.115 {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.ModalExclusionType.html", 147.116 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.117 + "<table class=\"useSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.118 "table, listing packages, and an explanation\">" 147.119 }, 147.120 {BUG_ID + FS + "pkg2" + FS + "class-use" + FS + "C2.ModalExclusionType.html", 147.121 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.122 + "<table class=\"useSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.123 "table, listing methods, and an explanation\">" 147.124 }, 147.125 // Package use documentation 147.126 {BUG_ID + FS + "pkg1" + FS + "package-use.html", 147.127 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.128 + "<table class=\"useSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.129 "table, listing packages, and an explanation\">" 147.130 }, 147.131 {BUG_ID + FS + "pkg1" + FS + "package-use.html", 147.132 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.133 + "<table class=\"useSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.134 "table, listing classes, and an explanation\">" 147.135 }, 147.136 {BUG_ID + FS + "pkg2" + FS + "package-use.html", 147.137 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.138 + "<table class=\"useSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.139 "table, listing packages, and an explanation\">" 147.140 }, 147.141 {BUG_ID + FS + "pkg2" + FS + "package-use.html", 147.142 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.143 + "<table class=\"useSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" summary=\"Use " + 147.144 "table, listing classes, and an explanation\">" 147.145 }, 147.146 // Deprecated 147.147 {BUG_ID + FS + "deprecated-list.html", 147.148 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" " + 147.149 + "<table class=\"deprecatedSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" " + 147.150 "summary=\"Deprecated Fields table, listing deprecated fields, " + 147.151 "and an explanation\">" 147.152 }, 147.153 {BUG_ID + FS + "deprecated-list.html", 147.154 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" " + 147.155 + "<table class=\"deprecatedSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" " + 147.156 "summary=\"Deprecated Methods table, listing deprecated methods, " + 147.157 "and an explanation\">" 147.158 }, 147.159 // Constant values 147.160 {BUG_ID + FS + "constant-values.html", 147.161 - "<table border=\"0\" cellpadding=\"3\" cellspacing=\"0\" " + 147.162 + "<table class=\"constantsSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" " + 147.163 "summary=\"Constant Field Values table, listing " + 147.164 "constant fields, and values\">" 147.165 },
148.1 --- a/test/com/sun/javadoc/testJavascript/TestJavascript.java Wed Oct 02 13:26:54 2013 -0700 148.2 +++ b/test/com/sun/javadoc/testJavascript/TestJavascript.java Tue Oct 08 14:59:46 2013 -0700 148.3 @@ -23,7 +23,7 @@ 148.4 148.5 /* 148.6 * @test 148.7 - * @bug 4665566 4855876 7025314 8012375 8015997 8016328 148.8 + * @bug 4665566 4855876 7025314 8012375 8015997 8016328 8024756 148.9 * @summary Verify that the output has the right javascript. 148.10 * @author jamieh 148.11 * @library ../lib/ 148.12 @@ -104,9 +104,13 @@ 148.13 148.14 //Make sure title javascript only runs if is-external is not true 148.15 {BUG_ID + FS + "pkg" + FS + "C.html", 148.16 - " if (location.href.indexOf('is-external=true') == -1) {" + NL + 148.17 - " parent.document.title=\"C\";" + NL + 148.18 - " }"}, 148.19 + " try {" + NL + 148.20 + " if (location.href.indexOf('is-external=true') == -1) {" + NL + 148.21 + " parent.document.title=\"C\";" + NL + 148.22 + " }" + NL + 148.23 + " }" + NL + 148.24 + " catch(err) {" + NL + 148.25 + " }"}, 148.26 }; 148.27 148.28 private static final String[][] NEGATED_TEST = NO_TEST;
149.1 --- a/test/com/sun/javadoc/testProfiles/TestProfiles.java Wed Oct 02 13:26:54 2013 -0700 149.2 +++ b/test/com/sun/javadoc/testProfiles/TestProfiles.java Tue Oct 08 14:59:46 2013 -0700 149.3 @@ -23,7 +23,7 @@ 149.4 149.5 /* 149.6 * @test 149.7 - * @bug 8006124 8009684 8016921 8023700 8024096 149.8 + * @bug 8006124 8009684 8016921 8023700 8024096 8008164 149.9 * @summary Test javadoc support for profiles. 149.10 * @author Bhavesh Patel, Evgeniya Stepanova 149.11 * @library ../lib/ 149.12 @@ -137,7 +137,7 @@ 149.13 }, 149.14 // need to add teststring when JDK-8015496 will be fixed 149.15 //Test exception in profiles 149.16 - {PROFILE_BUG_ID + FS + "compact1-summary.html","<table class=\"packageSummary\" " 149.17 + {PROFILE_BUG_ID + FS + "compact1-summary.html","<table class=\"typeSummary\" " 149.18 + "border=\"0\" cellpadding=\"3\" cellspacing=\"0\" " 149.19 + "summary=\"Exception Summary table, listing exceptions, and an explanation\">" 149.20 + NL + "<caption><span>Exception Summary</span><span class=\"tabEnd\">" 149.21 @@ -149,7 +149,7 @@ 149.22 }, 149.23 //Test errors in profiles 149.24 {PROFILE_BUG_ID + FS + "compact1-summary.html", 149.25 - "<table class=\"packageSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" " 149.26 + "<table class=\"typeSummary\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\" " 149.27 + "summary=\"Error Summary table, listing errors, and an explanation\">" 149.28 + NL + "<caption><span>Error Summary</span><span class=\"tabEnd\"> " 149.29 + "</span></caption>" + NL + "<tr>" + NL + "<th class=\"colFirst\""
150.1 --- a/test/com/sun/javadoc/testStylesheet/TestStylesheet.java Wed Oct 02 13:26:54 2013 -0700 150.2 +++ b/test/com/sun/javadoc/testStylesheet/TestStylesheet.java Tue Oct 08 14:59:46 2013 -0700 150.3 @@ -23,7 +23,7 @@ 150.4 150.5 /* 150.6 * @test 150.7 - * @bug 4494033 7028815 7052425 8007338 8023608 150.8 + * @bug 4494033 7028815 7052425 8007338 8023608 8008164 150.9 * @summary Run tests on doclet stylesheet. 150.10 * @author jamieh 150.11 * @library ../lib/ 150.12 @@ -59,10 +59,8 @@ 150.13 {BUG_ID + FS + "stylesheet.css", 150.14 "ul {" + NL + " list-style-type:disc;" + NL + "}"}, 150.15 {BUG_ID + FS + "stylesheet.css", 150.16 - ".overviewSummary caption, .packageSummary caption, " + 150.17 - ".contentContainer ul.blockList li.blockList caption, " + 150.18 - ".summary caption, .classUseContainer caption, " + 150.19 - ".constantValuesContainer caption {" + NL + 150.20 + ".overviewSummary caption, .memberSummary caption, .typeSummary caption," + NL + 150.21 + ".useSummary caption, .constantsSummary caption, .deprecatedSummary caption {" + NL + 150.22 " position:relative;" + NL + 150.23 " text-align:left;" + NL + 150.24 " background-repeat:no-repeat;" + NL + 150.25 @@ -74,10 +72,8 @@ 150.26 " margin:0px;" + NL + 150.27 "}"}, 150.28 {BUG_ID + FS + "stylesheet.css", 150.29 - ".overviewSummary caption span, .packageSummary caption span, " + 150.30 - ".contentContainer ul.blockList li.blockList caption span, " + 150.31 - ".summary caption span, .classUseContainer caption span, " + 150.32 - ".constantValuesContainer caption span {" + NL + 150.33 + ".overviewSummary caption span, .memberSummary caption span, .typeSummary caption span," + NL + 150.34 + ".useSummary caption span, .constantsSummary caption span, .deprecatedSummary caption span {" + NL + 150.35 " white-space:nowrap;" + NL + 150.36 " padding-top:8px;" + NL + 150.37 " padding-left:8px;" + NL + 150.38 @@ -86,8 +82,7 @@ 150.39 " background-image:url(resources/titlebar.gif);" + NL + 150.40 "}"}, 150.41 {BUG_ID + FS + "stylesheet.css", 150.42 - ".contentContainer ul.blockList li.blockList caption " + 150.43 - "span.activeTableTab span {" + NL + 150.44 + ".memberSummary caption span.activeTableTab span {" + NL + 150.45 " white-space:nowrap;" + NL + 150.46 " padding-top:8px;" + NL + 150.47 " padding-left:8px;" + NL + 150.48 @@ -96,7 +91,7 @@ 150.49 " background-image:url(resources/activetitlebar.gif);" + NL + 150.50 "}"}, 150.51 {BUG_ID + FS + "stylesheet.css", 150.52 - ".contentContainer ul.blockList li.blockList caption span.tableTab span {" + NL + 150.53 + ".memberSummary caption span.tableTab span {" + NL + 150.54 " white-space:nowrap;" + NL + 150.55 " padding-top:8px;" + NL + 150.56 " padding-left:8px;" + NL + 150.57 @@ -105,8 +100,7 @@ 150.58 " background-image:url(resources/titlebar.gif);" + NL + 150.59 "}"}, 150.60 {BUG_ID + FS + "stylesheet.css", 150.61 - ".contentContainer ul.blockList li.blockList caption span.tableTab, " + 150.62 - ".contentContainer ul.blockList li.blockList caption span.activeTableTab {" + NL + 150.63 + ".memberSummary caption span.tableTab, .memberSummary caption span.activeTableTab {" + NL + 150.64 " padding-top:0px;" + NL + 150.65 " padding-left:0px;" + NL + 150.66 " background-image:none;" + NL +
151.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 151.2 +++ b/test/tools/javac/ArraysInIntersections.java Tue Oct 08 14:59:46 2013 -0700 151.3 @@ -0,0 +1,39 @@ 151.4 +/* 151.5 + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 151.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 151.7 + * 151.8 + * This code is free software; you can redistribute it and/or modify it 151.9 + * under the terms of the GNU General Public License version 2 only, as 151.10 + * published by the Free Software Foundation. 151.11 + * 151.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 151.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 151.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 151.15 + * version 2 for more details (a copy is included in the LICENSE file that 151.16 + * accompanied this code). 151.17 + * 151.18 + * You should have received a copy of the GNU General Public License version 151.19 + * 2 along with this work; if not, write to the Free Software Foundation, 151.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 151.21 + * 151.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 151.23 + * or visit www.oracle.com if you need additional information or have any 151.24 + * questions. 151.25 + */ 151.26 + 151.27 +/* 151.28 + * @test 151.29 + * @bug 8021339 151.30 + * @summary Allow arrays in intersection types 151.31 + * @compile ArraysInIntersections.java 151.32 + */ 151.33 + 151.34 +import java.io.Serializable; 151.35 + 151.36 +public class ArraysInIntersections<T extends Serializable & Integer[]> { 151.37 + 151.38 + public <S extends Serializable & Integer[]> Object m() { 151.39 + return (Serializable & Integer[]) new Integer[1]; 151.40 + } 151.41 + 151.42 +}
152.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 152.2 +++ b/test/tools/javac/InferArraysInIntersections.java Tue Oct 08 14:59:46 2013 -0700 152.3 @@ -0,0 +1,38 @@ 152.4 +/* 152.5 + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 152.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 152.7 + * 152.8 + * This code is free software; you can redistribute it and/or modify it 152.9 + * under the terms of the GNU General Public License version 2 only, as 152.10 + * published by the Free Software Foundation. 152.11 + * 152.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 152.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 152.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 152.15 + * version 2 for more details (a copy is included in the LICENSE file that 152.16 + * accompanied this code). 152.17 + * 152.18 + * You should have received a copy of the GNU General Public License version 152.19 + * 2 along with this work; if not, write to the Free Software Foundation, 152.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 152.21 + * 152.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 152.23 + * or visit www.oracle.com if you need additional information or have any 152.24 + * questions. 152.25 + */ 152.26 + 152.27 +/* 152.28 + * @test 152.29 + * @bug 8021339 152.30 + * @summary Allow arrays in intersection types 152.31 + * @compile -doe -XDrawDiagnostics InferArraysInIntersections.java 152.32 + */ 152.33 +import java.util.*; 152.34 + 152.35 +class InferArraysInIntersections { 152.36 + <T> T m(List<? super T> t) { return null; } 152.37 + 152.38 + void test(List<char[]> lc) { 152.39 + Runnable r = m(lc); //inference fails here 152.40 + } 152.41 +}
153.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 153.2 +++ b/test/tools/javac/annotations/neg/8022765/T8022765.java Tue Oct 08 14:59:46 2013 -0700 153.3 @@ -0,0 +1,141 @@ 153.4 +/** 153.5 + * @test /nodynamiccopyright/ 153.6 + * @bug 8022765 153.7 + * @summary javac should not crash for incorrect attribute values 153.8 + * @build VerifyAnnotationsAttributed 153.9 + * @run main VerifyAnnotationsAttributed T8022765.java 153.10 + * @compile/fail/ref=T8022765.out -XDrawDiagnostics T8022765.java 153.11 + */ 153.12 +@Ann(@Override) 153.13 +@Primitive(@Override) 153.14 +@Str(@Override) 153.15 +@En(@Override) 153.16 +@ArrAnn(@Override) 153.17 +@ArrPrimitive(@Override) 153.18 +@ArrStr(@Override) 153.19 +@ArrEn(@Override) 153.20 +class AnnC { } 153.21 + 153.22 +class PrimitiveC { 153.23 + private static final int C = 1; 153.24 + @Ann(C) 153.25 + @Primitive(C) 153.26 + @Str(C) 153.27 + @En(C) 153.28 + @ArrAnn(C) 153.29 + @ArrPrimitive(C) 153.30 + @ArrStr(C) 153.31 + @ArrEn(C) 153.32 + class I { 153.33 + } 153.34 +} 153.35 + 153.36 +class StringC { 153.37 + 153.38 + private static final String C = ""; 153.39 + 153.40 + @Ann(C) 153.41 + @Primitive(C) 153.42 + @Str(C) 153.43 + @En(C) 153.44 + @ArrAnn(C) 153.45 + @ArrPrimitive(C) 153.46 + @ArrStr(C) 153.47 + @ArrEn(C) 153.48 + class I { 153.49 + } 153.50 +} 153.51 + 153.52 +@Ann(E.A) 153.53 +@Primitive(E.A) 153.54 +@Str(E.A) 153.55 +@En(E.A) 153.56 +@ArrAnn(E.A) 153.57 +@ArrPrimitive(E.A) 153.58 +@ArrStr(E.A) 153.59 +@ArrEn(E.A) 153.60 +class EnC { } 153.61 + 153.62 +@Ann({@Override}) 153.63 +@Primitive({@Override}) 153.64 +@Str({@Override}) 153.65 +@En({@Override}) 153.66 +@ArrAnn({@Override}) 153.67 +@ArrPrimitive({@Override}) 153.68 +@ArrStr({@Override}) 153.69 +@ArrEn({@Override}) 153.70 +class ArrAnnC { } 153.71 + 153.72 +class ArrPrimitiveC { 153.73 + private static final int C = 1; 153.74 + @Ann({C}) 153.75 + @Primitive({C}) 153.76 + @Str({C}) 153.77 + @En({C}) 153.78 + @ArrAnn({C}) 153.79 + @ArrPrimitive({C}) 153.80 + @ArrStr({C}) 153.81 + @ArrEn({C}) 153.82 + class I { 153.83 + } 153.84 +} 153.85 + 153.86 +class ArrStringC { 153.87 + private static final String C = ""; 153.88 + @Ann({C}) 153.89 + @Primitive({C}) 153.90 + @Str({C}) 153.91 + @En({C}) 153.92 + @ArrAnn({C}) 153.93 + @ArrPrimitive({C}) 153.94 + @ArrStr({C}) 153.95 + @ArrEn({C}) 153.96 + class I { 153.97 + } 153.98 +} 153.99 + 153.100 +@Ann({E.A}) 153.101 +@Primitive({E.A}) 153.102 +@Str({E.A}) 153.103 +@En({E.A}) 153.104 +@ArrAnn({E.A}) 153.105 +@ArrPrimitive({E.A}) 153.106 +@ArrStr({E.A}) 153.107 +@ArrEn({E.A}) 153.108 +class ArrEnC { } 153.109 + 153.110 +@interface Ann { 153.111 + Override value(); 153.112 +} 153.113 + 153.114 +@interface Primitive { 153.115 + int value(); 153.116 +} 153.117 + 153.118 +@interface Str { 153.119 + String value(); 153.120 +} 153.121 + 153.122 +@interface En { 153.123 + E value(); 153.124 +} 153.125 + 153.126 +@interface ArrAnn { 153.127 + Override[] value(); 153.128 +} 153.129 + 153.130 +@interface ArrPrimitive { 153.131 + int[] value(); 153.132 +} 153.133 + 153.134 +@interface ArrStr { 153.135 + String[] value(); 153.136 +} 153.137 + 153.138 +@interface ArrEn { 153.139 + E[] value(); 153.140 +} 153.141 + 153.142 +enum E { 153.143 + A; 153.144 +}
154.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 154.2 +++ b/test/tools/javac/annotations/neg/8022765/T8022765.out Tue Oct 08 14:59:46 2013 -0700 154.3 @@ -0,0 +1,57 @@ 154.4 +T8022765.java:10:12: compiler.err.annotation.not.valid.for.type: int 154.5 +T8022765.java:11:6: compiler.err.annotation.not.valid.for.type: java.lang.String 154.6 +T8022765.java:12:5: compiler.err.annotation.not.valid.for.type: E 154.7 +T8022765.java:14:15: compiler.err.annotation.not.valid.for.type: int 154.8 +T8022765.java:15:9: compiler.err.annotation.not.valid.for.type: java.lang.String 154.9 +T8022765.java:16:8: compiler.err.annotation.not.valid.for.type: E 154.10 +T8022765.java:21:10: compiler.err.annotation.value.must.be.annotation 154.11 +T8022765.java:23:10: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: int, java.lang.String) 154.12 +T8022765.java:24:9: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: int, E) 154.13 +T8022765.java:25:13: compiler.err.annotation.value.must.be.annotation 154.14 +T8022765.java:27:13: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: int, java.lang.String) 154.15 +T8022765.java:28:12: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: int, E) 154.16 +T8022765.java:37:10: compiler.err.annotation.value.must.be.annotation 154.17 +T8022765.java:38:16: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: java.lang.String, int) 154.18 +T8022765.java:40:9: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: java.lang.String, E) 154.19 +T8022765.java:41:13: compiler.err.annotation.value.must.be.annotation 154.20 +T8022765.java:42:19: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: java.lang.String, int) 154.21 +T8022765.java:44:12: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: java.lang.String, E) 154.22 +T8022765.java:49:7: compiler.err.annotation.value.must.be.annotation 154.23 +T8022765.java:50:13: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: E, int) 154.24 +T8022765.java:51:7: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: E, java.lang.String) 154.25 +T8022765.java:53:10: compiler.err.annotation.value.must.be.annotation 154.26 +T8022765.java:54:16: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: E, int) 154.27 +T8022765.java:55:10: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: E, java.lang.String) 154.28 +T8022765.java:59:6: compiler.err.annotation.value.not.allowable.type 154.29 +T8022765.java:60:12: compiler.err.annotation.value.not.allowable.type 154.30 +T8022765.java:61:6: compiler.err.annotation.value.not.allowable.type 154.31 +T8022765.java:62:5: compiler.err.annotation.value.not.allowable.type 154.32 +T8022765.java:64:16: compiler.err.annotation.not.valid.for.type: int 154.33 +T8022765.java:65:10: compiler.err.annotation.not.valid.for.type: java.lang.String 154.34 +T8022765.java:66:9: compiler.err.annotation.not.valid.for.type: E 154.35 +T8022765.java:71:10: compiler.err.annotation.value.not.allowable.type 154.36 +T8022765.java:72:16: compiler.err.annotation.value.not.allowable.type 154.37 +T8022765.java:73:10: compiler.err.annotation.value.not.allowable.type 154.38 +T8022765.java:74:9: compiler.err.annotation.value.not.allowable.type 154.39 +T8022765.java:75:14: compiler.err.annotation.value.must.be.annotation 154.40 +T8022765.java:77:14: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: int, java.lang.String) 154.41 +T8022765.java:78:13: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: int, E) 154.42 +T8022765.java:85:10: compiler.err.annotation.value.not.allowable.type 154.43 +T8022765.java:86:16: compiler.err.annotation.value.not.allowable.type 154.44 +T8022765.java:87:10: compiler.err.annotation.value.not.allowable.type 154.45 +T8022765.java:88:9: compiler.err.annotation.value.not.allowable.type 154.46 +T8022765.java:89:14: compiler.err.annotation.value.must.be.annotation 154.47 +T8022765.java:90:20: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: java.lang.String, int) 154.48 +T8022765.java:92:13: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: java.lang.String, E) 154.49 +T8022765.java:97:6: compiler.err.annotation.value.not.allowable.type 154.50 +T8022765.java:97:8: compiler.err.attribute.value.must.be.constant 154.51 +T8022765.java:98:12: compiler.err.annotation.value.not.allowable.type 154.52 +T8022765.java:98:14: compiler.err.attribute.value.must.be.constant 154.53 +T8022765.java:99:6: compiler.err.annotation.value.not.allowable.type 154.54 +T8022765.java:99:8: compiler.err.attribute.value.must.be.constant 154.55 +T8022765.java:100:5: compiler.err.annotation.value.not.allowable.type 154.56 +T8022765.java:100:7: compiler.err.attribute.value.must.be.constant 154.57 +T8022765.java:101:11: compiler.err.annotation.value.must.be.annotation 154.58 +T8022765.java:102:17: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: E, int) 154.59 +T8022765.java:103:11: compiler.err.prob.found.req: (compiler.misc.inconvertible.types: E, java.lang.String) 154.60 +56 errors 154.61 \ No newline at end of file
155.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 155.2 +++ b/test/tools/javac/annotations/neg/8022765/VerifyAnnotationsAttributed.java Tue Oct 08 14:59:46 2013 -0700 155.3 @@ -0,0 +1,78 @@ 155.4 +/* 155.5 + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 155.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 155.7 + * 155.8 + * This code is free software; you can redistribute it and/or modify it 155.9 + * under the terms of the GNU General Public License version 2 only, as 155.10 + * published by the Free Software Foundation. 155.11 + * 155.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 155.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 155.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 155.15 + * version 2 for more details (a copy is included in the LICENSE file that 155.16 + * accompanied this code). 155.17 + * 155.18 + * You should have received a copy of the GNU General Public License version 155.19 + * 2 along with this work; if not, write to the Free Software Foundation, 155.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 155.21 + * 155.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 155.23 + * or visit www.oracle.com if you need additional information or have any 155.24 + * questions. 155.25 + */ 155.26 +import com.sun.source.tree.CompilationUnitTree; 155.27 +import com.sun.source.tree.IdentifierTree; 155.28 +import com.sun.source.tree.MemberSelectTree; 155.29 +import com.sun.source.util.JavacTask; 155.30 +import com.sun.source.util.TreePathScanner; 155.31 +import com.sun.source.util.Trees; 155.32 +import com.sun.tools.javac.api.JavacTool; 155.33 +import com.sun.tools.javac.file.JavacFileManager; 155.34 +import java.io.File; 155.35 +import java.io.IOException; 155.36 +import java.net.URISyntaxException; 155.37 +import java.util.Collections; 155.38 +import javax.lang.model.element.Element; 155.39 +import javax.lang.model.element.ElementKind; 155.40 + 155.41 +public class VerifyAnnotationsAttributed { 155.42 + public static void main(String... args) throws IOException, URISyntaxException { 155.43 + if (args.length != 1) throw new IllegalStateException("Must provide class name!"); 155.44 + File testSrc = new File(System.getProperty("test.src")); 155.45 + File testFile = new File(testSrc, args[0]); 155.46 + if (!testFile.canRead()) throw new IllegalStateException("Cannot read the test source"); 155.47 + JavacFileManager fm = JavacTool.create().getStandardFileManager(null, null, null); 155.48 + JavacTask task = JavacTool.create().getTask(null, 155.49 + fm, 155.50 + null, 155.51 + Collections.<String>emptyList(), 155.52 + null, 155.53 + fm.getJavaFileObjects(testFile)); 155.54 + final Trees trees = Trees.instance(task); 155.55 + final CompilationUnitTree cut = task.parse().iterator().next(); 155.56 + task.analyze(); 155.57 + 155.58 + //ensure all the annotation attributes are annotated meaningfully 155.59 + //all the attributes in the test file should contain either an identifier 155.60 + //or a select, so only checking those for a reasonable Element/Symbol. 155.61 + new TreePathScanner<Void, Void>() { 155.62 + @Override 155.63 + public Void visitIdentifier(IdentifierTree node, Void p) { 155.64 + verifyAttributedMeaningfully(); 155.65 + return super.visitIdentifier(node, p); 155.66 + } 155.67 + @Override 155.68 + public Void visitMemberSelect(MemberSelectTree node, Void p) { 155.69 + verifyAttributedMeaningfully(); 155.70 + return super.visitMemberSelect(node, p); 155.71 + } 155.72 + private void verifyAttributedMeaningfully() { 155.73 + Element el = trees.getElement(getCurrentPath()); 155.74 + 155.75 + if (el == null || el.getKind() == ElementKind.OTHER) { 155.76 + throw new IllegalStateException("Not attributed properly: " + getCurrentPath().getParentPath().getLeaf()); 155.77 + } 155.78 + } 155.79 + }.scan(cut, null); 155.80 + } 155.81 +}
156.1 --- a/test/tools/javac/api/TestJavacTask.java Wed Oct 02 13:26:54 2013 -0700 156.2 +++ b/test/tools/javac/api/TestJavacTask.java Tue Oct 08 14:59:46 2013 -0700 156.3 @@ -1,5 +1,5 @@ 156.4 /* 156.5 - * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved. 156.6 + * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved. 156.7 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 156.8 * 156.9 * This code is free software; you can redistribute it and/or modify it 156.10 @@ -23,8 +23,8 @@ 156.11 156.12 /* 156.13 * @test 156.14 - * @bug 4813736 156.15 - * @summary Provide a basic test of access to the Java Model from javac 156.16 + * @bug 4813736 8015073 156.17 + * @summary Provide a basic test of access to the Java Model from javac, and error messages 156.18 * @author Peter von der Ah\u00e9 156.19 * @run main TestJavacTask TestJavacTask.java 156.20 */ 156.21 @@ -40,21 +40,36 @@ 156.22 import javax.tools.ToolProvider; 156.23 156.24 public class TestJavacTask { 156.25 - 156.26 - static JavacTaskImpl getTask(JavaCompiler compiler, File... file) { 156.27 + static final JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); 156.28 + static JavacTaskImpl getTask(File... file) { 156.29 StandardJavaFileManager fm = compiler.getStandardFileManager(null, null, null); 156.30 Iterable<? extends JavaFileObject> files = 156.31 fm.getJavaFileObjectsFromFiles(Arrays.asList(file)); 156.32 return (JavacTaskImpl)compiler.getTask(null, fm, null, null, null, files); 156.33 } 156.34 156.35 - public static void main(String... args) throws IOException { 156.36 - JavaCompiler tool = ToolProvider.getSystemJavaCompiler(); 156.37 + static void basicTest(String... args) throws IOException { 156.38 String srcdir = System.getProperty("test.src"); 156.39 File file = new File(srcdir, args[0]); 156.40 - JavacTaskImpl task = getTask(tool, file); 156.41 + JavacTaskImpl task = getTask(file); 156.42 for (TypeElement clazz : task.enter(task.parse())) 156.43 System.out.println(clazz.getSimpleName()); 156.44 } 156.45 156.46 + static void checkKindError() { 156.47 + final File testFile = new File("Test.java "); // <-note trailing space! 156.48 + try { 156.49 + getTask(testFile); 156.50 + } catch (IllegalArgumentException iae) { 156.51 + if (!iae.getMessage().contains("\"" + testFile.getName() + "\"")) { 156.52 + System.err.println("Got message: " + iae.getMessage()); 156.53 + throw new RuntimeException("Error: expected string not found"); 156.54 + } 156.55 + } 156.56 + } 156.57 + 156.58 + public static void main(String... args) throws IOException { 156.59 + basicTest(args); 156.60 + checkKindError(); 156.61 + } 156.62 }
157.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 157.2 +++ b/test/tools/javac/diags/examples/UnderscoreInLambdaExpression.java Tue Oct 08 14:59:46 2013 -0700 157.3 @@ -0,0 +1,27 @@ 157.4 +/* 157.5 + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 157.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 157.7 + * 157.8 + * This code is free software; you can redistribute it and/or modify it 157.9 + * under the terms of the GNU General Public License version 2 only, as 157.10 + * published by the Free Software Foundation. 157.11 + * 157.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 157.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 157.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 157.15 + * version 2 for more details (a copy is included in the LICENSE file that 157.16 + * accompanied this code). 157.17 + * 157.18 + * You should have received a copy of the GNU General Public License version 157.19 + * 2 along with this work; if not, write to the Free Software Foundation, 157.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 157.21 + * 157.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 157.23 + * or visit www.oracle.com if you need additional information or have any 157.24 + * questions. 157.25 + */ 157.26 + 157.27 +// key: compiler.err.underscore.as.identifier.in.lambda 157.28 +public class UnderscoreInLambdaExpression { 157.29 + java.util.function.Function<String,String> f = _ -> "x"; 157.30 +}
158.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 158.2 +++ b/test/tools/javac/enum/EnumAsIdentifier.java Tue Oct 08 14:59:46 2013 -0700 158.3 @@ -0,0 +1,16 @@ 158.4 +/** 158.5 + * @test /nodynamiccopyright/ 158.6 + * @bug 8025537 158.7 + * @author sogoel 158.8 + * @summary enum keyword used as an identifier 158.9 + * @compile/ref=EnumAsIdentifier4.out -XDrawDiagnostics -source 1.4 EnumAsIdentifier.java 158.10 + * @compile/fail/ref=EnumAsIdentifier5.out -XDrawDiagnostics -source 1.5 EnumAsIdentifier.java 158.11 + * @compile/fail/ref=EnumAsIdentifier.out -XDrawDiagnostics EnumAsIdentifier.java 158.12 + */ 158.13 + 158.14 +public class EnumAsIdentifier { 158.15 + 158.16 + int enum = 0; 158.17 + 158.18 +} 158.19 +
159.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 159.2 +++ b/test/tools/javac/enum/EnumAsIdentifier.out Tue Oct 08 14:59:46 2013 -0700 159.3 @@ -0,0 +1,2 @@ 159.4 +EnumAsIdentifier.java:13:9: compiler.err.enum.as.identifier 159.5 +1 error
160.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 160.2 +++ b/test/tools/javac/enum/EnumAsIdentifier4.out Tue Oct 08 14:59:46 2013 -0700 160.3 @@ -0,0 +1,6 @@ 160.4 +- compiler.warn.source.no.bootclasspath: 1.4 160.5 +- compiler.warn.option.obsolete.source: 1.4 160.6 +- compiler.warn.option.obsolete.target: 1.4 160.7 +- compiler.warn.option.obsolete.suppression 160.8 +EnumAsIdentifier.java:13:9: compiler.warn.enum.as.identifier 160.9 +5 warnings
161.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 161.2 +++ b/test/tools/javac/enum/EnumAsIdentifier5.out Tue Oct 08 14:59:46 2013 -0700 161.3 @@ -0,0 +1,6 @@ 161.4 +- compiler.warn.source.no.bootclasspath: 1.5 161.5 +- compiler.warn.option.obsolete.source: 1.5 161.6 +- compiler.warn.option.obsolete.suppression 161.7 +EnumAsIdentifier.java:13:9: compiler.err.enum.as.identifier 161.8 +1 error 161.9 +3 warnings
162.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 162.2 +++ b/test/tools/javac/enum/EnumMembersOrder.java Tue Oct 08 14:59:46 2013 -0700 162.3 @@ -0,0 +1,20 @@ 162.4 +/** 162.5 + * @test /nodynamiccopyright/ 162.6 + * @bug 8025537 5028491 162.7 + * @author sogoel 162.8 + * @summary enum constants should precede other enum members 162.9 + * @compile/fail/ref=EnumMembersOrder.out -XDrawDiagnostics EnumMembersOrder.java 162.10 + */ 162.11 + 162.12 +enum Days { 162.13 + 162.14 + Days(String d) { day = d; } // constructor 162.15 + 162.16 + // enum constants 162.17 + WEEKEND("SAT"), 162.18 + WEEKDAY("MON"); 162.19 + 162.20 + private String day; 162.21 + 162.22 +} 162.23 +
163.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 163.2 +++ b/test/tools/javac/enum/EnumMembersOrder.out Tue Oct 08 14:59:46 2013 -0700 163.3 @@ -0,0 +1,7 @@ 163.4 +EnumMembersOrder.java:11:16: compiler.err.expected: ')' 163.5 +EnumMembersOrder.java:11:17: compiler.err.expected3: ',', '}', ';' 163.6 +EnumMembersOrder.java:11:19: compiler.err.expected: '}' 163.7 +EnumMembersOrder.java:11:31: compiler.err.expected3: class, interface, enum 163.8 +EnumMembersOrder.java:17:13: compiler.err.expected3: class, interface, enum 163.9 +EnumMembersOrder.java:19:1: compiler.err.expected3: class, interface, enum 163.10 +6 errors
164.1 --- a/test/tools/javac/generics/OverrideBridge.java Wed Oct 02 13:26:54 2013 -0700 164.2 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 164.3 @@ -1,166 +0,0 @@ 164.4 -/* 164.5 - * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved. 164.6 - * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 164.7 - * 164.8 - * This code is free software; you can redistribute it and/or modify it 164.9 - * under the terms of the GNU General Public License version 2 only, as 164.10 - * published by the Free Software Foundation. 164.11 - * 164.12 - * This code is distributed in the hope that it will be useful, but WITHOUT 164.13 - * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 164.14 - * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 164.15 - * version 2 for more details (a copy is included in the LICENSE file that 164.16 - * accompanied this code). 164.17 - * 164.18 - * You should have received a copy of the GNU General Public License version 164.19 - * 2 along with this work; if not, write to the Free Software Foundation, 164.20 - * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 164.21 - * 164.22 - * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 164.23 - * or visit www.oracle.com if you need additional information or have any 164.24 - * questions. 164.25 - */ 164.26 - 164.27 -/* 164.28 - * @test 164.29 - * @bug 6337171 6996415 164.30 - * @ignore 6996758: Investigate better override bridges strategy 164.31 - * @summary javac should create bridge methods when type variable bounds restricted 164.32 - * @run main OverrideBridge 164.33 - */ 164.34 - 164.35 -// fix, and test, has been disabled as a consequence of 6996415 164.36 - 164.37 -import java.io.*; 164.38 -import java.net.URI; 164.39 -import java.util.ArrayList; 164.40 -import java.util.Arrays; 164.41 -import java.util.List; 164.42 -import java.util.Map; 164.43 -import java.util.HashMap; 164.44 -import javax.tools.JavaCompiler; 164.45 -import javax.tools.JavaFileObject; 164.46 -import javax.tools.SimpleJavaFileObject; 164.47 -import javax.tools.ToolProvider; 164.48 - 164.49 -import com.sun.source.util.JavacTask; 164.50 -import com.sun.tools.classfile.ClassFile; 164.51 -import com.sun.tools.classfile.ConstantPoolException; 164.52 -import com.sun.tools.classfile.Descriptor.InvalidDescriptor; 164.53 -import com.sun.tools.classfile.Method; 164.54 - 164.55 -public class OverrideBridge { 164.56 - 164.57 - enum Implementation { 164.58 - IMPLICIT(""), 164.59 - EXPLICIT("@Override public abstract X m(X x);"); 164.60 - 164.61 - String impl; 164.62 - 164.63 - Implementation(String impl) { 164.64 - this.impl = impl; 164.65 - } 164.66 - } 164.67 - 164.68 - static class JavaSource extends SimpleJavaFileObject { 164.69 - 164.70 - final static String sourceStub = 164.71 - "abstract class A<X> {\n" + 164.72 - " public abstract X m(X x);\n" + 164.73 - "}\n" + 164.74 - "interface I<X> {\n" + 164.75 - "X m(X x);\n" + 164.76 - "}\n" + 164.77 - "abstract class B<X extends B<X>> extends A<X> implements I<X> { #B }\n" + 164.78 - "abstract class C<X extends C<X>> extends B<X> { #C }\n" + 164.79 - "abstract class D<X extends D<X>> extends C<X> { #D }\n"; 164.80 - 164.81 - String source; 164.82 - 164.83 - public JavaSource(Implementation implB, Implementation implC, Implementation implD) { 164.84 - super(URI.create("myfo:/Test.java"), JavaFileObject.Kind.SOURCE); 164.85 - source = sourceStub.replace("#B", implB.impl).replace("#C", implC.impl).replace("#D", implD.impl); 164.86 - } 164.87 - 164.88 - @Override 164.89 - public CharSequence getCharContent(boolean ignoreEncodingErrors) { 164.90 - return source; 164.91 - } 164.92 - } 164.93 - 164.94 - public static void main(String... args) throws Exception { 164.95 - Map<ClassFile, List<Method>> refMembers = 164.96 - compile(Implementation.EXPLICIT, Implementation.EXPLICIT, Implementation.EXPLICIT, "ref"); 164.97 - int i = 0; 164.98 - for (Implementation implB : Implementation.values()) { 164.99 - for (Implementation implC : Implementation.values()) { 164.100 - for (Implementation implD : Implementation.values()) { 164.101 - Map<ClassFile, List<Method>> membersToCheck = compile(implB, implC, implD, "out_" + i++); 164.102 - check(refMembers, membersToCheck); 164.103 - } 164.104 - } 164.105 - } 164.106 - } 164.107 - 164.108 - static String workDir = System.getProperty("user.dir"); 164.109 - 164.110 - static Map<ClassFile, List<Method>> compile(Implementation implB, Implementation implC, Implementation implD, String destPath) throws Exception { 164.111 - File destDir = new File(workDir, destPath); destDir.mkdir(); 164.112 - final JavaCompiler tool = ToolProvider.getSystemJavaCompiler(); 164.113 - JavaSource source = new JavaSource(implB, implC, implD); 164.114 - JavacTask ct = (JavacTask)tool.getTask(null, null, null, 164.115 - Arrays.asList("-d", destPath), null, Arrays.asList(source)); 164.116 - ct.generate(); 164.117 - Map<ClassFile, List<Method>> members = new HashMap<>(); 164.118 - addMembers(destDir, members); 164.119 - return members; 164.120 - } 164.121 - 164.122 - static void addMembers(File destDir, Map<ClassFile, List<Method>> members) { 164.123 - String[] names = { "B.class", "C.class", "D.class" }; 164.124 - try { 164.125 - for (String name : names) { 164.126 - File f = new File(destDir, name); 164.127 - ClassFile cf = ClassFile.read(f); 164.128 - members.put(cf, readMethod(cf, "m")); 164.129 - } 164.130 - } catch (Exception e) { 164.131 - e.printStackTrace(); 164.132 - throw new Error("error reading classes"); 164.133 - } 164.134 - } 164.135 - 164.136 - static List<Method> readMethod(ClassFile cf, String name) throws ConstantPoolException { 164.137 - List<Method> buf = new ArrayList<>(); 164.138 - for (Method m : cf.methods) { 164.139 - if (m.getName(cf.constant_pool).equals(name)) { 164.140 - buf.add(m); 164.141 - } 164.142 - } 164.143 - return buf; 164.144 - } 164.145 - 164.146 - static void check(Map<ClassFile, List<Method>> refMembers, Map<ClassFile, List<Method>> membersToCheck) throws ConstantPoolException, InvalidDescriptor { 164.147 - for (Map.Entry<ClassFile, List<Method>> ref : refMembers.entrySet()) { 164.148 - ClassFile cRef = ref.getKey(); 164.149 - for (Method mRef : ref.getValue()) { 164.150 - boolean ok = false; 164.151 - for (Map.Entry<ClassFile, List<Method>> toCheck : membersToCheck.entrySet()) { 164.152 - ClassFile cToCheck = toCheck.getKey(); 164.153 - for (Method mToCheck : toCheck.getValue()) { 164.154 - if (cRef.getName().equals(cToCheck.getName()) && 164.155 - mRef.descriptor.getReturnType(cRef.constant_pool).equals( 164.156 - mToCheck.descriptor.getReturnType(cToCheck.constant_pool)) && 164.157 - mRef.descriptor.getParameterTypes(cRef.constant_pool).equals( 164.158 - mToCheck.descriptor.getParameterTypes(cToCheck.constant_pool))) { 164.159 - ok = true; 164.160 - } 164.161 - } 164.162 - } 164.163 - if (!ok) { 164.164 - throw new AssertionError("Matching method descriptor for " + mRef.descriptor.getParameterTypes(cRef.constant_pool) + "not found"); 164.165 - } 164.166 - } 164.167 - } 164.168 - } 164.169 -}
165.1 --- a/test/tools/javac/generics/typevars/6680106/T6680106.out Wed Oct 02 13:26:54 2013 -0700 165.2 +++ b/test/tools/javac/generics/typevars/6680106/T6680106.out Tue Oct 08 14:59:46 2013 -0700 165.3 @@ -1,13 +1,7 @@ 165.4 -T6680106.java:11:25: compiler.err.type.found.req: T[], (compiler.misc.type.req.class) 165.5 -T6680106.java:12:25: compiler.err.type.found.req: S[], (compiler.misc.type.req.class) 165.6 -T6680106.java:12:40: compiler.err.type.found.req: T[], (compiler.misc.type.req.class) 165.7 -T6680106.java:13:25: compiler.err.type.found.req: S[], (compiler.misc.type.req.class) 165.8 -T6680106.java:13:40: compiler.err.type.found.req: U[], (compiler.misc.type.req.class) 165.9 -T6680106.java:13:55: compiler.err.type.found.req: T[], (compiler.misc.type.req.class) 165.10 -T6680106.java:14:30: compiler.err.type.found.req: T[], (compiler.misc.type.req.class) 165.11 -T6680106.java:15:30: compiler.err.type.found.req: S[], (compiler.misc.type.req.class) 165.12 -T6680106.java:15:50: compiler.err.type.found.req: T[], (compiler.misc.type.req.class) 165.13 -T6680106.java:16:30: compiler.err.type.found.req: S[], (compiler.misc.type.req.class) 165.14 -T6680106.java:16:50: compiler.err.type.found.req: U[], (compiler.misc.type.req.class) 165.15 -T6680106.java:16:70: compiler.err.type.found.req: T[], (compiler.misc.type.req.class) 165.16 -12 errors 165.17 +T6680106.java:11:14: compiler.err.cyclic.inheritance: T 165.18 +T6680106.java:12:14: compiler.err.cyclic.inheritance: T 165.19 +T6680106.java:13:14: compiler.err.cyclic.inheritance: T 165.20 +T6680106.java:14:14: compiler.err.cyclic.inheritance: T 165.21 +T6680106.java:15:14: compiler.err.cyclic.inheritance: T 165.22 +T6680106.java:16:14: compiler.err.cyclic.inheritance: T 165.23 +6 errors
166.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 166.2 +++ b/test/tools/javac/lambda/8024497/CrashUsingReturningThisRefLambdaFromDefaultMetTest.java Tue Oct 08 14:59:46 2013 -0700 166.3 @@ -0,0 +1,41 @@ 166.4 +/* 166.5 + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 166.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 166.7 + * 166.8 + * This code is free software; you can redistribute it and/or modify it 166.9 + * under the terms of the GNU General Public License version 2 only, as 166.10 + * published by the Free Software Foundation. 166.11 + * 166.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 166.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 166.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 166.15 + * version 2 for more details (a copy is included in the LICENSE file that 166.16 + * accompanied this code). 166.17 + * 166.18 + * You should have received a copy of the GNU General Public License version 166.19 + * 2 along with this work; if not, write to the Free Software Foundation, 166.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 166.21 + * 166.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 166.23 + * or visit www.oracle.com if you need additional information or have any 166.24 + * questions. 166.25 + */ 166.26 + 166.27 +/* 166.28 + * @test 166.29 + * @bug 8024497 166.30 + * @summary crash returning this-referencing lambda from default method 166.31 + * @compile CrashUsingReturningThisRefLambdaFromDefaultMetTest.java 166.32 + */ 166.33 + 166.34 +interface SuperInterface {} 166.35 + 166.36 +interface CrashUsingReturningThisRefLambdaFromDefaultMetTest extends SuperInterface { 166.37 + default Runnable getAction() { 166.38 + return () -> { 166.39 + SuperInterface.super.getClass(); 166.40 + this.getClass(); 166.41 + CrashUsingReturningThisRefLambdaFromDefaultMetTest.this.getClass(); 166.42 + }; 166.43 + } 166.44 +}
167.1 --- a/test/tools/javac/lambda/methodReference/BridgeMethod.java Wed Oct 02 13:26:54 2013 -0700 167.2 +++ b/test/tools/javac/lambda/methodReference/BridgeMethod.java Tue Oct 08 14:59:46 2013 -0700 167.3 @@ -108,9 +108,10 @@ 167.4 System.out.println("methods in SAM conversion of N:"); 167.5 for(Method m : methods) { 167.6 System.out.println(m.toGenericString()); 167.7 - assertTrue(m.getName().equals("m")); 167.8 - Class<?> returnType = m.getReturnType(); 167.9 - assertTrue(types.remove(returnType.getName())); 167.10 + if (m.getName().equals("m")) { 167.11 + Class<?> returnType = m.getReturnType(); 167.12 + assertTrue(types.remove(returnType.getName())); 167.13 + } 167.14 } 167.15 assertTrue(types.size() == 1); //there's a bridge 167.16 }
168.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 168.2 +++ b/test/tools/javac/processing/errors/TestBadProcessor.java Tue Oct 08 14:59:46 2013 -0700 168.3 @@ -0,0 +1,119 @@ 168.4 +/* 168.5 + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 168.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 168.7 + * 168.8 + * This code is free software; you can redistribute it and/or modify it 168.9 + * under the terms of the GNU General Public License version 2 only, as 168.10 + * published by the Free Software Foundation. 168.11 + * 168.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 168.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 168.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 168.15 + * version 2 for more details (a copy is included in the LICENSE file that 168.16 + * accompanied this code). 168.17 + * 168.18 + * You should have received a copy of the GNU General Public License version 168.19 + * 2 along with this work; if not, write to the Free Software Foundation, 168.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 168.21 + * 168.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 168.23 + * or visit www.oracle.com if you need additional information or have any 168.24 + * questions. 168.25 + */ 168.26 + 168.27 +/* 168.28 + * @test 168.29 + * @bug 8022163 168.30 + * @summary javac exits with 0 status and no messages on error to construct an ann-procesor 168.31 + */ 168.32 + 168.33 +import java.io.*; 168.34 + 168.35 +public class TestBadProcessor { 168.36 + public static void main(String... args) throws Exception { 168.37 + new TestBadProcessor().run(); 168.38 + } 168.39 + 168.40 + public static final String badAnnoProcSrc = 168.41 + "import java.util.*;\n" + 168.42 + "import javax.annotation.processing.*;\n" + 168.43 + "import javax.lang.model.element.*;\n" + 168.44 + 168.45 + "public class AnnoProc extends AbstractProcessor {\n" + 168.46 + " public AnnoProc() {\n" + 168.47 + " throw new Error();\n" + 168.48 + " }\n" + 168.49 + 168.50 + " public boolean process(Set<? extends TypeElement> elems, \n" + 168.51 + " RoundEnvironment rEnv) {\n" + 168.52 + " return false;\n" + 168.53 + " }\n" + 168.54 + "}\n"; 168.55 + 168.56 + public void run() throws Exception { 168.57 + // setup 168.58 + File srcDir = new File("src"); 168.59 + File classesDir = new File("classes"); 168.60 + classesDir.mkdirs(); 168.61 + File srcFile = writeFile(srcDir, "AnnoProc.java", badAnnoProcSrc); 168.62 + compile("-d", classesDir.getPath(), srcFile.getPath()); 168.63 + writeFile(classesDir, "META-INF/services/javax.annotation.processing.Processor", "AnnoProc"); 168.64 + 168.65 + // run the primary compilation 168.66 + int rc; 168.67 + StringWriter sw = new StringWriter(); 168.68 + try (PrintWriter pw = new PrintWriter(sw)) { 168.69 + String[] args = { "-processorpath", classesDir.getPath(), srcFile.getPath() }; 168.70 + rc = com.sun.tools.javac.Main.compile(args, pw); 168.71 + } 168.72 + 168.73 + // verify that it failed as expected, with the expected message 168.74 + String out = sw.toString(); 168.75 + System.err.println(out); 168.76 + String expect = "error: Bad service configuration file, " + 168.77 + "or exception thrown while constructing Processor object: " + 168.78 + "javax.annotation.processing.Processor: " + 168.79 + "Provider AnnoProc could not be instantiated: java.lang.Error"; 168.80 + if (!out.trim().equals(expect)) { 168.81 + System.err.println("expected: " + expect); 168.82 + error("output not as expected"); 168.83 + } 168.84 + 168.85 + if (rc == 0) { 168.86 + error("unexpected exit code: " + rc + "; expected: not zero"); 168.87 + } 168.88 + 168.89 + // summary 168.90 + if (errors > 0) 168.91 + throw new Exception(errors + " errors found"); 168.92 + } 168.93 + 168.94 + void compile(String... args) throws Exception { 168.95 + int rc; 168.96 + StringWriter sw = new StringWriter(); 168.97 + try (PrintWriter pw = new PrintWriter(sw)) { 168.98 + rc = com.sun.tools.javac.Main.compile(args, pw); 168.99 + } 168.100 + String out = sw.toString(); 168.101 + if (!out.isEmpty()) 168.102 + System.err.println(out); 168.103 + if (rc != 0) 168.104 + throw new Exception("compilation failed"); 168.105 + } 168.106 + 168.107 + File writeFile(File dir, String path, String body) throws IOException { 168.108 + File f = new File(dir, path); 168.109 + f.getParentFile().mkdirs(); 168.110 + try (FileWriter out = new FileWriter(f)) { 168.111 + out.write(body); 168.112 + } 168.113 + return f; 168.114 + } 168.115 + 168.116 + void error(String msg) { 168.117 + System.err.println("Error: " + msg); 168.118 + errors++; 168.119 + } 168.120 + 168.121 + int errors; 168.122 +}
169.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 169.2 +++ b/test/tools/javac/processing/model/element/TestTypeElement.java Tue Oct 08 14:59:46 2013 -0700 169.3 @@ -0,0 +1,63 @@ 169.4 +/* 169.5 + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 169.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 169.7 + * 169.8 + * This code is free software; you can redistribute it and/or modify it 169.9 + * under the terms of the GNU General Public License version 2 only, as 169.10 + * published by the Free Software Foundation. 169.11 + * 169.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 169.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 169.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 169.15 + * version 2 for more details (a copy is included in the LICENSE file that 169.16 + * accompanied this code). 169.17 + * 169.18 + * You should have received a copy of the GNU General Public License version 169.19 + * 2 along with this work; if not, write to the Free Software Foundation, 169.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 169.21 + * 169.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 169.23 + * or visit www.oracle.com if you need additional information or have any 169.24 + * questions. 169.25 + */ 169.26 + 169.27 +/* 169.28 + * @test 169.29 + * @bug 8025118 169.30 + * @summary Verify that TypeElement for interfaces does not have 169.31 + * Modifier.DEFAULT in getModifiers() 169.32 + * @library /tools/javac/lib 169.33 + * @build JavacTestingAbstractProcessor TestTypeElement 169.34 + * @compile -processor TestTypeElement -proc:only TestTypeElement.java 169.35 + */ 169.36 + 169.37 +import java.util.Set; 169.38 +import javax.annotation.processing.*; 169.39 +import javax.lang.model.element.*; 169.40 +import static javax.tools.Diagnostic.Kind.*; 169.41 + 169.42 +/** 169.43 + * Verify that TypeElement for interfaces does not have Modifier.DEFAULT in getModifiers(). 169.44 + */ 169.45 +public class TestTypeElement extends JavacTestingAbstractProcessor { 169.46 + public boolean process(Set<? extends TypeElement> annotations, 169.47 + RoundEnvironment roundEnv) { 169.48 + if (!roundEnv.processingOver()) { 169.49 + for (Element element : roundEnv.getRootElements()) { 169.50 + if (element.getKind().isClass() || element.getKind().isInterface()) { 169.51 + if (element.getModifiers().contains(Modifier.DEFAULT)) 169.52 + messager.printMessage(ERROR, "Modifier.DEFAULT not expected on classes/interfaces"); 169.53 + } 169.54 + } 169.55 + } 169.56 + return true; 169.57 + } 169.58 + 169.59 +} 169.60 + 169.61 +/** 169.62 + * Test interface to provide a default method. 169.63 + */ 169.64 +interface InterfaceWithDefaultMethod { 169.65 + default void quux() {} 169.66 +}
170.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 170.2 +++ b/test/tools/javac/processing/model/type/InheritedAP.java Tue Oct 08 14:59:46 2013 -0700 170.3 @@ -0,0 +1,96 @@ 170.4 +/* 170.5 + * Copyright (c) 2012, 2013, Oracle and/or its affiliates. All rights reserved. 170.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 170.7 + * 170.8 + * This code is free software; you can redistribute it and/or modify it 170.9 + * under the terms of the GNU General Public License version 2 only, as 170.10 + * published by the Free Software Foundation. 170.11 + * 170.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 170.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 170.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 170.15 + * version 2 for more details (a copy is included in the LICENSE file that 170.16 + * accompanied this code). 170.17 + * 170.18 + * You should have received a copy of the GNU General Public License version 170.19 + * 2 along with this work; if not, write to the Free Software Foundation, 170.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 170.21 + * 170.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 170.23 + * or visit www.oracle.com if you need additional information or have any 170.24 + * questions. 170.25 + */ 170.26 + 170.27 +/* 170.28 + * @test 170.29 + * @bug 8024513 170.30 + * @library /tools/javac/lib 170.31 + * @build InheritedAP 170.32 + * @compile -cp . -processor InheritedAP -proc:only InheritedAP.java 170.33 + * @summary NPE in annotation processing 170.34 + */ 170.35 +import java.util.*; 170.36 +import javax.annotation.processing.*; 170.37 +import javax.lang.model.element.*; 170.38 +import javax.lang.model.type.*; 170.39 +import javax.lang.model.util.*; 170.40 +import java.lang.annotation.*; 170.41 +import static javax.lang.model.type.TypeKind.*; 170.42 +import static javax.lang.model.SourceVersion.*; 170.43 +import static javax.lang.model.util.ElementFilter.*; 170.44 + 170.45 +@SupportedAnnotationTypes("testclass") 170.46 +@SupportedSourceVersion(RELEASE_8) 170.47 +public class InheritedAP extends AbstractProcessor { 170.48 + static Types types; 170.49 + public void init(ProcessingEnvironment penv) {super.init(penv);} 170.50 + public static Types getTypes() { return types; } 170.51 + 170.52 + public boolean process(Set<? extends TypeElement> typeElementSet,RoundEnvironment renv) { 170.53 + if ( renv.errorRaised()) { System.out.println("Error!"); return false; } 170.54 + if ( typeElementSet.size() <=0 && typesIn(renv.getRootElements()).size() <= 0 ) { 170.55 + return true; 170.56 + } 170.57 + types=processingEnv.getTypeUtils(); 170.58 + for (TypeElement typeElem: typesIn(renv.getRootElements())) { 170.59 + if (typeElem.getAnnotation(testclass.class) != null) { 170.60 + new ElementScanner( new SimpleTypeMirrorVisitor()).scan(typeElem, null); 170.61 + } 170.62 + } 170.63 + return true ; 170.64 + } 170.65 +} 170.66 + 170.67 +class SimpleTypeMirrorVisitor extends SimpleTypeVisitor6 <Void, Void> { 170.68 + protected Void defaultAction(TypeMirror mirror, Void p ) { 170.69 + try { 170.70 + System.out.println( "InheritedAP.getTypes().directSupertypes( "+mirror.toString()+" );" ); 170.71 + InheritedAP.getTypes().directSupertypes(mirror); 170.72 + System.out.println("PASS"); 170.73 + }catch(java.lang.IllegalArgumentException iae) {/*stuff*/ } 170.74 + return p; 170.75 + } 170.76 +} 170.77 + 170.78 +class ElementScanner <T extends SimpleTypeVisitor6<Void, Void> > 170.79 + extends ElementScanner6<Void, Void> { 170.80 + SimpleTypeVisitor6<Void, Void> typeVisitor; 170.81 + 170.82 + public ElementScanner(T typeVisitor) { this.typeVisitor=typeVisitor;} 170.83 + 170.84 + @Override 170.85 + public Void scan(Element e, Void p) { 170.86 + if (e instanceof TypeElement ) { 170.87 + TypeElement te = (TypeElement) e; 170.88 + te.getSuperclass().accept(typeVisitor,p); 170.89 + } 170.90 + return p; 170.91 + } 170.92 + 170.93 +} 170.94 + 170.95 + 170.96 +@interface testclass { } 170.97 + 170.98 +@testclass 170.99 +@interface iface { }
171.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 171.2 +++ b/test/tools/javap/BoundsTypeVariableTest.java Tue Oct 08 14:59:46 2013 -0700 171.3 @@ -0,0 +1,95 @@ 171.4 +/* 171.5 + * Copyright (c) 2013, Oracle and/or its affiliates. All rights reserved. 171.6 + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 171.7 + * 171.8 + * This code is free software; you can redistribute it and/or modify it 171.9 + * under the terms of the GNU General Public License version 2 only, as 171.10 + * published by the Free Software Foundation. 171.11 + * 171.12 + * This code is distributed in the hope that it will be useful, but WITHOUT 171.13 + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or 171.14 + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 171.15 + * version 2 for more details (a copy is included in the LICENSE file that 171.16 + * accompanied this code). 171.17 + * 171.18 + * You should have received a copy of the GNU General Public License version 171.19 + * 2 along with this work; if not, write to the Free Software Foundation, 171.20 + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. 171.21 + * 171.22 + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA 171.23 + * or visit www.oracle.com if you need additional information or have any 171.24 + * questions. 171.25 + */ 171.26 + 171.27 +/** 171.28 + * @test 171.29 + * @bug 8003537 171.30 + * @summary javap should not use / in Bounds Type Variables 171.31 + */ 171.32 + 171.33 +import java.io.File; 171.34 +import java.io.IOException; 171.35 +import java.io.PrintWriter; 171.36 +import java.io.StringWriter; 171.37 +import java.nio.charset.Charset; 171.38 +import java.nio.file.Files; 171.39 +import java.util.ArrayList; 171.40 +import java.util.List; 171.41 +import java.util.regex.Pattern; 171.42 +import static java.nio.file.StandardOpenOption.*; 171.43 + 171.44 +public class BoundsTypeVariableTest { 171.45 + public static void main(String... args) throws Exception { 171.46 + new BoundsTypeVariableTest().run(); 171.47 + } 171.48 + 171.49 + void run() throws Exception { 171.50 + File srcDir = new File("src"); 171.51 + srcDir.mkdirs(); 171.52 + File classesDir = new File("classes"); 171.53 + classesDir.mkdirs(); 171.54 + final String expect = "public abstract <U extends java.lang.Object> U doit();"; 171.55 + List<String> contents = new ArrayList<>(); 171.56 + contents.add("abstract class X {"); 171.57 + contents.add(expect); 171.58 + contents.add("}"); 171.59 + 171.60 + File f = writeFile(new File(srcDir, "X.java"), contents); 171.61 + javac("-d", classesDir.getPath(), f.getPath()); 171.62 + String out = javap("-p", "-v", new File(classesDir, "X.class").getPath()); 171.63 + if (!out.contains(expect)) { 171.64 + throw new Exception("expected pattern not found: " + expect); 171.65 + } 171.66 + } 171.67 + 171.68 + File writeFile(File f, List<String> body) throws IOException { 171.69 + Files.write(f.toPath(), body, Charset.defaultCharset(), 171.70 + CREATE, TRUNCATE_EXISTING); 171.71 + return f; 171.72 + } 171.73 + 171.74 + void javac(String... args) throws Exception { 171.75 + StringWriter sw = new StringWriter(); 171.76 + PrintWriter pw = new PrintWriter(sw); 171.77 + int rc = com.sun.tools.javac.Main.compile(args, pw); 171.78 + pw.flush(); 171.79 + String out = sw.toString(); 171.80 + if (!out.isEmpty()) 171.81 + System.err.println(out); 171.82 + if (rc != 0) 171.83 + throw new Exception("compilation failed"); 171.84 + } 171.85 + 171.86 + String javap(String... args) throws Exception { 171.87 + StringWriter sw = new StringWriter(); 171.88 + PrintWriter pw = new PrintWriter(sw); 171.89 + int rc = com.sun.tools.javap.Main.run(args, pw); 171.90 + pw.flush(); 171.91 + String out = sw.toString(); 171.92 + if (!out.isEmpty()) 171.93 + System.err.println(out); 171.94 + if (rc != 0) 171.95 + throw new Exception("javap failed"); 171.96 + return out; 171.97 + } 171.98 +}