Skip to content

Semantic LS fails in several different ways when dotting off of class expression name #3077

@DanielRosenwasser

Description

@DanielRosenwasser
var x = class C {
    y: C;
    constructor() {
        var x: C/*1*/;
        C/*2*/
    }
}

Try adding a dot at /*1*/ and /*2*/.

At position 1:

getCompletionsAtPosition('C:\Users\drosen\AppData\Local\Temp\~vsB8BD.ts', 68)

Error: Debug Failure. False expression: Should only get Alias here.
   at assert (:1364:17)
   at resolveAlias (:11384:13)
   at resolveEntityName (:11494:13)
   at getSymbolOfEntityNameOrPropertyAccessExpression (:21067:17)
   at getSymbolInfo (:21090:21)
   at getSymbolAtLocation (:15567:13)
   at getTypeScriptMemberSymbols (:37562:21)
   at getCompletionData (:37545:17)
   at getCompletionsAtPosition (:37916:13)
   at Anonymous function (:42069:17)
   at simpleForwardCall (:41788:9)
   at forwardJSONCall (:41804:13)
   at forwardJSONCall (:41849:13)
   at getCompletionsAtPosition (:42068:13)
getSemanticClassifications('C:\Users\drosen\AppData\Local\Temp\~vsB8BD.ts', 0, 89)

Error: Debug Failure. False expression: Should only get Alias here.
   at assert (:1364:17)
   at resolveAlias (:11384:13)
   at resolveEntityName (:11494:13)
   at getSymbolOfEntityNameOrPropertyAccessExpression (:21067:17)
   at getSymbolInfo (:21090:21)
   at getSymbolAtLocation (:15567:13)
   at processNode (:40197:25)
   at visitNode (:5991:13)
   at forEachChild (:6025:17)
   at processNode (:40205:21)
   at visitNode (:5991:13)
   at forEachChild (:6075:17)
   at processNode (:40205:21)
   at visitNode (:5991:13)
   at forEachChild (:6038:17)
   at processNode (:40205:21)
   at visitEachNode (:6003:17)
   at forEachChild (:6152:17)
   at processNode (:40205:21)
   at visitNode (:5991:13)
   at forEachChild (:6148:17)
   at processNode (:40205:21)
   at visitEachNode (:6003:17)
   at forEachChild (:6143:17)
   at processNode (:40205:21)
   at visitN......
getSemanticDiagnostics('C:\Users\drosen\AppData\Local\Temp\~vsB8BD.ts')

Error: Debug Failure. False expression: Should only get Alias here.
   at assert (:1364:17)
   at resolveAlias (:11384:13)
   at resolveEntityName (:11494:13)
   at resolveEntityName (:11480:17)
   at getTypeFromTypeReferenceOrExpressionWithTypeArguments (:13858:21)
   at checkTypeReferenceOrExpressionWithTypeArguments (:18461:13)
   at checkTypeReferenceNode (:18452:13)
   at checkSourceElement (:20555:21)
   at checkVariableLikeDeclaration (:19175:13)
   at checkVariableDeclaration (:19236:13)
   at checkSourceElement (:20605:21)
   at forEach (:703:17)
   at checkVariableStatement (:19245:13)
   at checkSourceElement (:20574:21)
   at forEach (:703:17)
   at checkBlock (:18974:13)
   at checkSourceElement (:20572:21)
   at checkConstructorDeclaration (:18345:13)
   at checkSourceElement (:20550:21)
   at forEach (:703:17)
   at checkClassExpression (:19806:13)
  ......

At position 2:

getCompletionsAtPosition('C:\Users\drosen\AppData\Local\Temp\~vsB8BD.ts', 80)

TypeError: Unable to get property 'heritageClauses' of undefined or null reference
   at getClassExtendsHeritageClauseElement (:5060:9)
   at resolveBaseTypesOfClass (:13016:13)
   at getBaseTypes (:13002:21)
   at resolveAnonymousTypeMembers (:13356:21)
   at resolveObjectOrUnionTypeMembers (:13373:21)
   at getPropertiesOfObjectType (:13390:17)
   at getPropertiesOfType (:13419:13)
   at getAugmentedPropertiesOfType (:21182:13)
   at getApparentProperties (:36039:13)
   at getTypeScriptMemberSymbols (:37580:21)
   at getCompletionData (:37545:17)
   at getCompletionsAtPosition (:37916:13)
   at Anonymous function (:42069:17)
   at simpleForwardCall (:41788:9)
   at forwardJSONCall (:41804:13)
   at forwardJSONCall (:41849:13)
   at getCompletionsAtPosition (:42068:13)
getSemanticDiagnostics('C:\Users\drosen\AppData\Local\Temp\~vsB8BD.ts')

TypeError: Unable to get property 'heritageClauses' of undefined or null reference
   at getClassExtendsHeritageClauseElement (:5060:9)
   at resolveBaseTypesOfClass (:13016:13)
   at getBaseTypes (:13002:21)
   at resolveAnonymousTypeMembers (:13356:21)
   at resolveObjectOrUnionTypeMembers (:13373:21)
   at getPropertyOfType (:13501:17)
   at checkPropertyAccessExpressionOrQualifiedName (:16562:17)
   at checkPropertyAccessExpression (:16547:13)
   at checkExpressionWorker (:18176:21)
   at checkExpressionOrQualifiedName (:18127:17)
   at checkExpression (:18112:13)
   at checkExpressionStatement (:19265:13)
   at checkSourceElement (:20576:21)
   at forEach (:703:17)
   at checkBlock (:18974:13)
   at checkSourceElement (:20572:21)
   at checkConstructorDeclaration (:18345:13)
   at checkSourceElement (:20550:21)
   at forEach (:703:17)
   at checkClassExpression......

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugA bug in TypeScript

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions