@@ -875,7 +875,7 @@ namespace ts {
875
875
initializeState ( "" , content , languageVersion , /*syntaxCursor*/ undefined , ScriptKind . JS ) ;
876
876
// Prime the scanner.
877
877
nextToken ( ) ;
878
- const entityName = parseEntityName ( /*allowReservedWords*/ true ) ;
878
+ const entityName = parseEntityName ( /*allowReservedWords*/ true , /*allowPrivateIdentifiers*/ false ) ;
879
879
const isInvalid = token ( ) === SyntaxKind . EndOfFileToken && ! parseDiagnostics . length ;
880
880
clearState ( ) ;
881
881
return isInvalid ? entityName : undefined ;
@@ -2719,7 +2719,7 @@ namespace ts {
2719
2719
return createMissingList < T > ( ) ;
2720
2720
}
2721
2721
2722
- function parseEntityName ( allowReservedWords : boolean , diagnosticMessage ?: DiagnosticMessage ) : EntityName {
2722
+ function parseEntityName ( allowReservedWords : boolean , allowPrivateIdentifiers : boolean , diagnosticMessage ?: DiagnosticMessage ) : EntityName {
2723
2723
const pos = getNodePos ( ) ;
2724
2724
let entity : EntityName = allowReservedWords ? parseIdentifierName ( diagnosticMessage ) : parseIdentifier ( diagnosticMessage ) ;
2725
2725
let dotPos = getNodePos ( ) ;
@@ -2733,7 +2733,7 @@ namespace ts {
2733
2733
entity = finishNode (
2734
2734
factory . createQualifiedName (
2735
2735
entity ,
2736
- parseRightSideOfDot ( allowReservedWords , /* allowPrivateIdentifiers */ false ) as Identifier
2736
+ parseRightSideOfDot ( allowReservedWords , allowPrivateIdentifiers ) as Identifier
2737
2737
) ,
2738
2738
pos
2739
2739
) ;
@@ -2918,7 +2918,7 @@ namespace ts {
2918
2918
// TYPES
2919
2919
2920
2920
function parseEntityNameOfTypeReference ( ) {
2921
- return parseEntityName ( /*allowReservedWords*/ true , Diagnostics . Type_expected ) ;
2921
+ return parseEntityName ( /*allowReservedWords*/ true , /*allowPrivateIdentifiers*/ false , Diagnostics . Type_expected ) ;
2922
2922
}
2923
2923
2924
2924
function parseTypeArgumentsOfTypeReference ( ) {
@@ -3078,7 +3078,7 @@ namespace ts {
3078
3078
function parseTypeQuery ( ) : TypeQueryNode {
3079
3079
const pos = getNodePos ( ) ;
3080
3080
parseExpected ( SyntaxKind . TypeOfKeyword ) ;
3081
- return finishNode ( factory . createTypeQueryNode ( parseEntityName ( /*allowReservedWords*/ true ) ) , pos ) ;
3081
+ return finishNode ( factory . createTypeQueryNode ( parseEntityName ( /*allowReservedWords*/ true , /*allowPrivateIdentifiers*/ true ) ) , pos ) ;
3082
3082
}
3083
3083
3084
3084
function parseTypeParameter ( ) : TypeParameterDeclaration {
@@ -7351,7 +7351,7 @@ namespace ts {
7351
7351
function parseModuleReference ( ) {
7352
7352
return isExternalModuleReference ( )
7353
7353
? parseExternalModuleReference ( )
7354
- : parseEntityName ( /*allowReservedWords*/ false ) ;
7354
+ : parseEntityName ( /*allowReservedWords*/ false , /*allowPrivateIdentifiers*/ false ) ;
7355
7355
}
7356
7356
7357
7357
function parseExternalModuleReference ( ) {
@@ -7659,7 +7659,7 @@ namespace ts {
7659
7659
const pos = getNodePos ( ) ;
7660
7660
const hasBrace = parseOptional ( SyntaxKind . OpenBraceToken ) ;
7661
7661
const p2 = getNodePos ( ) ;
7662
- let entityName : EntityName | JSDocMemberName = parseEntityName ( /* allowReservedWords*/ false ) ;
7662
+ let entityName : EntityName | JSDocMemberName = parseEntityName ( /* allowReservedWords*/ false , /*allowPrivateIdentifiers*/ false ) ;
7663
7663
while ( token ( ) === SyntaxKind . PrivateIdentifier ) {
7664
7664
reScanHashToken ( ) ; // rescan #id as # id
7665
7665
nextTokenJSDoc ( ) ; // then skip the #
@@ -8122,7 +8122,7 @@ namespace ts {
8122
8122
// parseEntityName logs an error for non-identifier, so create a MissingNode ourselves to avoid the error
8123
8123
const p2 = getNodePos ( ) ;
8124
8124
let name : EntityName | JSDocMemberName | undefined = tokenIsIdentifierOrKeyword ( token ( ) )
8125
- ? parseEntityName ( /*allowReservedWords*/ true )
8125
+ ? parseEntityName ( /*allowReservedWords*/ true , /*allowPrivateIdentifiers*/ false )
8126
8126
: undefined ;
8127
8127
if ( name ) {
8128
8128
while ( token ( ) === SyntaxKind . PrivateIdentifier ) {
0 commit comments