@@ -486,11 +486,6 @@ private RefConversion GetRefConversionType(VBSyntax.ArgumentSyntax node, VBSynta
486486 return NeedsVariableForArgument ( node , refKind ) ;
487487 }
488488
489- private static StatementSyntax AssignStmt ( ExpressionSyntax left , IdentifierNameSyntax right )
490- {
491- return SyntaxFactory . ExpressionStatement ( Assign ( left , right ) ) ;
492- }
493-
494489 private static AssignmentExpressionSyntax Assign ( ExpressionSyntax left , IdentifierNameSyntax right )
495490 {
496491 return SyntaxFactory . AssignmentExpression ( SyntaxKind . SimpleAssignmentExpression , left , right ) ;
@@ -1165,7 +1160,7 @@ public override async Task<CSharpSyntaxNode> VisitQualifiedName(VBasic.Syntax.Qu
11651160 }
11661161 var partOfNamespaceDeclaration = topLevelName . Parent . IsKind ( VBasic . SyntaxKind . NamespaceStatement ) ;
11671162 var leftIsGlobal = node . Left . IsKind ( VBasic . SyntaxKind . GlobalName ) ;
1168-
1163+ var isPartOfNameOfExpression = node . GetAncestor < VBSyntax . NameOfExpressionSyntax > ( ) != null ;
11691164 ExpressionSyntax qualifiedName ;
11701165 if ( partOfNamespaceDeclaration || ! ( lhsSyntax is SimpleNameSyntax sns ) ) {
11711166 if ( leftIsGlobal ) return rhsSyntax ;
@@ -1174,9 +1169,9 @@ public override async Task<CSharpSyntaxNode> VisitQualifiedName(VBasic.Syntax.Qu
11741169 qualifiedName = QualifyNode ( node . Left , sns ) ;
11751170 }
11761171
1177- return leftIsGlobal
1178- ? ( CSharpSyntaxNode ) SyntaxFactory . AliasQualifiedName ( ( IdentifierNameSyntax ) lhsSyntax , rhsSyntax )
1179- : SyntaxFactory . QualifiedName ( ( NameSyntax ) qualifiedName , rhsSyntax ) ;
1172+ return leftIsGlobal ? SyntaxFactory . AliasQualifiedName ( ( IdentifierNameSyntax ) lhsSyntax , rhsSyntax ) :
1173+ isPartOfNameOfExpression ? SyntaxFactory . MemberAccessExpression ( SyntaxKind . SimpleMemberAccessExpression , ( NameSyntax ) qualifiedName , rhsSyntax ) :
1174+ ( CSharpSyntaxNode ) SyntaxFactory . QualifiedName ( ( NameSyntax ) qualifiedName , rhsSyntax ) ;
11801175 }
11811176
11821177 public override async Task < CSharpSyntaxNode > VisitGenericName ( VBasic . Syntax . GenericNameSyntax node )
0 commit comments