Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
lwm1986
roslyn
提交
540492ff
R
roslyn
项目概览
lwm1986
/
roslyn
与 Fork 源项目一致
从无法访问的项目Fork
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
roslyn
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
540492ff
编写于
1月 09, 2020
作者:
R
Rikki Gibson
提交者:
GitHub
1月 09, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Don't throw in GetMetadataReference for an unexpected assembly type (#40794)
上级
3918f04f
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
39 addition
and
2 deletion
+39
-2
src/Compilers/CSharp/Portable/Compilation/CSharpCompilation.cs
...ompilers/CSharp/Portable/Compilation/CSharpCompilation.cs
+6
-1
src/Compilers/CSharp/Test/Symbol/Compilation/CompilationAPITests.cs
...ers/CSharp/Test/Symbol/Compilation/CompilationAPITests.cs
+14
-0
src/Compilers/VisualBasic/Portable/Compilation/VisualBasicCompilation.vb
...isualBasic/Portable/Compilation/VisualBasicCompilation.vb
+6
-1
src/Compilers/VisualBasic/Test/Semantic/Compilation/CompilationAPITests.vb
...ualBasic/Test/Semantic/Compilation/CompilationAPITests.vb
+13
-0
未找到文件。
src/Compilers/CSharp/Portable/Compilation/CSharpCompilation.cs
浏览文件 @
540492ff
...
...
@@ -1118,7 +1118,12 @@ public new MetadataReference GetMetadataReference(IAssemblySymbol assemblySymbol
private
protected
override
MetadataReference
CommonGetMetadataReference
(
IAssemblySymbol
assemblySymbol
)
{
return
GetMetadataReference
(
assemblySymbol
.
EnsureCSharpSymbolOrNull
(
nameof
(
assemblySymbol
)));
if
(
assemblySymbol
is
Symbols
.
PublicModel
.
AssemblySymbol
{
UnderlyingAssemblySymbol
:
var
underlyingSymbol
})
{
return
GetMetadataReference
(
underlyingSymbol
);
}
return
null
;
}
internal
MetadataReference
GetMetadataReference
(
AssemblySymbol
assemblySymbol
)
...
...
src/Compilers/CSharp/Test/Symbol/Compilation/CompilationAPITests.cs
浏览文件 @
540492ff
...
...
@@ -2267,6 +2267,20 @@ public void GetMetadataReferenceAPITest()
Assert
.
NotNull
(
reference2
);
}
[
Fact
]
[
WorkItem
(
40466
,
"https://github.com/dotnet/roslyn/issues/40466"
)]
public
void
GetMetadataReference_VisualBasicSymbols
()
{
var
comp
=
CreateCompilation
(
""
);
var
vbComp
=
CreateVisualBasicCompilation
(
""
,
referencedAssemblies
:
TargetFrameworkUtil
.
GetReferences
(
TargetFramework
.
Standard
));
var
assembly
=
(
IAssemblySymbol
)
vbComp
.
GetBoundReferenceManager
().
GetReferencedAssemblies
().
First
().
Value
;
Assert
.
Null
(
comp
.
GetMetadataReference
(
assembly
));
Assert
.
Null
(
comp
.
GetMetadataReference
(
vbComp
.
Assembly
));
Assert
.
Null
(
comp
.
GetMetadataReference
((
IAssemblySymbol
)
null
));
}
[
Fact
]
public
void
ConsistentParseOptions
()
{
...
...
src/Compilers/VisualBasic/Portable/Compilation/VisualBasicCompilation.vb
浏览文件 @
540492ff
...
...
@@ -1232,7 +1232,12 @@ Namespace Microsoft.CodeAnalysis.VisualBasic
End
Function
Private
Protected
Overrides
Function
CommonGetMetadataReference
(
assemblySymbol
As
IAssemblySymbol
)
As
MetadataReference
Return
GetMetadataReference
(
assemblySymbol
.
EnsureVbSymbolOrNothing
(
Of
AssemblySymbol
)(
NameOf
(
assemblySymbol
)))
Dim
symbol
=
TryCast
(
assemblySymbol
,
AssemblySymbol
)
If
symbol
IsNot
Nothing
Then
Return
GetMetadataReference
(
symbol
)
End
If
Return
Nothing
End
Function
Public
Overrides
ReadOnly
Property
ReferencedAssemblyNames
As
IEnumerable
(
Of
AssemblyIdentity
)
...
...
src/Compilers/VisualBasic/Test/Semantic/Compilation/CompilationAPITests.vb
浏览文件 @
540492ff
...
...
@@ -2257,6 +2257,19 @@ End Class
Assert
.
NotNull
(
reference2
)
End
Sub
<
WorkItem
(
40466
,
"https://github.com/dotnet/roslyn/issues/40466"
)
>
<
Fact
>
Public
Sub
GetMetadataReference_CSharpSymbols
()
Dim
comp
As
Compilation
=
CreateCompilation
(
""
)
Dim
csComp
=
CreateCSharpCompilation
(
""
,
referencedAssemblies
:
=
TargetFrameworkUtil
.
GetReferences
(
TargetFramework
.
Standard
))
Dim
assembly
=
csComp
.
GetBoundReferenceManager
().
GetReferencedAssemblies
().
First
().
Value
Assert
.
Null
(
comp
.
GetMetadataReference
(
DirectCast
(
assembly
.
GetISymbol
(),
IAssemblySymbol
)))
Assert
.
Null
(
comp
.
GetMetadataReference
(
csComp
.
Assembly
))
Assert
.
Null
(
comp
.
GetMetadataReference
(
Nothing
))
End
Sub
<
Fact
()
>
Public
Sub
EqualityOfMergedNamespaces
()
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录