Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
openanolis
dragonwell8_langtools
提交
9ea28d4c
D
dragonwell8_langtools
项目概览
openanolis
/
dragonwell8_langtools
通知
0
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
D
dragonwell8_langtools
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
9ea28d4c
编写于
1月 08, 2010
作者:
J
jjg
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
6665791: com.sun.source.tree.MethodTree.toString() does not output default values
Reviewed-by: darcy
上级
cb537e7a
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
85 addition
and
0 deletion
+85
-0
src/share/classes/com/sun/tools/javac/tree/Pretty.java
src/share/classes/com/sun/tools/javac/tree/Pretty.java
+4
-0
test/tools/javac/T6665791.java
test/tools/javac/T6665791.java
+81
-0
未找到文件。
src/share/classes/com/sun/tools/javac/tree/Pretty.java
浏览文件 @
9ea28d4c
...
...
@@ -468,6 +468,10 @@ public class Pretty extends JCTree.Visitor {
print
(
" throws "
);
printExprs
(
tree
.
thrown
);
}
if
(
tree
.
defaultValue
!=
null
)
{
print
(
" default "
);
printExpr
(
tree
.
defaultValue
);
}
if
(
tree
.
body
!=
null
)
{
print
(
" "
);
printStat
(
tree
.
body
);
...
...
test/tools/javac/T6665791.java
0 → 100644
浏览文件 @
9ea28d4c
/*
* Copyright 2010 Sun Microsystems, Inc. All Rights Reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
*
* This code is free software; you can redistribute it and/or modify it
* under the terms of the GNU General Public License version 2 only, as
* published by the Free Software Foundation.
*
* This code is distributed in the hope that it will be useful, but WITHOUT
* ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
* FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
* version 2 for more details (a copy is included in the LICENSE file that
* accompanied this code).
*
* You should have received a copy of the GNU General Public License version
* 2 along with this work; if not, write to the Free Software Foundation,
* Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
*
* Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,
* CA 95054 USA or visit www.sun.com if you need additional information or
* have any questions.
*/
/*
* @test
* @bug 6665791
* @summary com.sun.source.tree.MethodTree.toString() does not output default values
*/
import
java.io.File
;
import
java.io.IOException
;
import
java.io.StringWriter
;
import
javax.tools.JavaCompiler
;
import
javax.tools.JavaFileObject
;
import
javax.tools.StandardJavaFileManager
;
import
javax.tools.ToolProvider
;
import
com.sun.source.tree.ClassTree
;
import
com.sun.source.util.JavacTask
;
import
com.sun.source.util.TreeScanner
;
import
java.io.FileWriter
;
public
class
T6665791
{
static
String
test
=
"public @interface Annotation { boolean booleanProperty() default false; }"
;
static
File
test_java
=
new
File
(
"Test.java"
);
public
static
void
main
(
String
[]
args
)
throws
Exception
{
write
(
test_java
,
test
);
JavaCompiler
compiler
=
ToolProvider
.
getSystemJavaCompiler
();
StandardJavaFileManager
manager
=
compiler
.
getStandardFileManager
(
null
,
null
,
null
);
Iterable
<?
extends
JavaFileObject
>
units
=
manager
.
getJavaFileObjects
(
test_java
);
final
StringWriter
sw
=
new
StringWriter
();
JavacTask
task
=
(
JavacTask
)
compiler
.
getTask
(
sw
,
manager
,
null
,
null
,
null
,
units
);
new
TreeScanner
<
Boolean
,
Void
>()
{
@Override
public
Boolean
visitClass
(
ClassTree
arg0
,
Void
arg1
)
{
sw
.
write
(
arg0
.
toString
());
return
super
.
visitClass
(
arg0
,
arg1
);
}
}.
scan
(
task
.
parse
(),
null
);
System
.
out
.
println
(
"output:"
);
System
.
out
.
println
(
sw
.
toString
());
String
found
=
sw
.
toString
().
replaceAll
(
"\\s+"
,
" "
).
trim
();
String
expect
=
test
.
replaceAll
(
"\\s+"
,
" "
).
trim
();
if
(!
expect
.
equals
(
found
))
{
System
.
out
.
println
(
"expect: "
+
expect
);
System
.
out
.
println
(
"found: "
+
found
);
throw
new
Exception
(
"unexpected output"
);
}
}
static
void
write
(
File
file
,
String
body
)
throws
IOException
{
FileWriter
out
=
new
FileWriter
(
file
);
out
.
write
(
body
);
out
.
close
();
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录