Skip to content

Extract to typedef from (invalid) type with comments in JS file causes assertion failure #48540

Closed
@DanielRosenwasser

Description

@DanielRosenwasser
// @filename: foo.js
type Foo = [|{
    /**
     * 
     */
    oops: string;
}|];

// @filename: bar.js
type Bar = [|string | /* oops */ boolean|];

Request "extract to typedef" on each[|region|].

Response received: getEditsForRefactor (194). Request took 2 ms. Success: false . Message: Error processing request. Debug Failure. False expression: Node must have a real position for this operation
Error: Debug Failure. False expression: Node must have a real position for this operation
    at NodeObject.assertHasRealPosition ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:162180:22)
    at NodeObject.getStart ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:162186:18)
    at processChildNode ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:145804:47)
    at processChildNodes ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:145905:48)
    at [NODE_MODULES_DIR]/typescript/lib/tsserver.js:145793:21
    at visitNodes ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:30193:24)
    at Object.forEachChild ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:30677:24)
    at processNode ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:145790:20)
    at formatSpanWorker ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:145590:17)
    at [NODE_MODULES_DIR]/typescript/lib/tsserver.js:145553:140
    at Object.getFormattingScanner ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:144180:23)
    at Object.formatNodeGivenIndentation ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:145553:31)
    at getFormattedTextOfNode ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:147971:45)
    at format ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:147942:52)
    at computeNewText ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:147945:23)
    at [NODE_MODULES_DIR]/typescript/lib/tsserver.js:147909:39
    at Object.mapDefined ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:605:30)
    at [NODE_MODULES_DIR]/typescript/lib/tsserver.js:147907:42
    at Object.mapDefined ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:605:30)
    at Object.getTextChangesFromChanges ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:147893:27)
    at ChangeTracker.getChanges ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:147832:45)
    at Function.ChangeTracker.with ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:147252:32)
    at Object.getRefactorEditsToExtractType [as getEditsForAction] ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:159993:62)
    at Object.getEditsForRefactor ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:148557:41)
    at Object.getEditsForRefactor ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:164314:32)
    at IpcIOSession.Session.getEditsForRefactor ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:175446:59)
    at Session.handlers.ts.Map.ts.getEntries._a.<computed> ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:174066:61)
    at [NODE_MODULES_DIR]/typescript/lib/tsserver.js:175829:88
    at IpcIOSession.Session.executeWithRequestId ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:175820:28)
    at IpcIOSession.Session.executeCommand ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:175829:33)
    at IpcIOSession.Session.onMessage ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:175855:35)
    at process.<anonymous> ([NODE_MODULES_DIR]/typescript/lib/tsserver.js:178490:31)
    at process.emit (node:events:390:28)
    at emit (node:internal/child_process:917:12)
    at processTicksAndRejections (node:internal/process/task_queues:84:21)

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugA bug in TypeScriptCrashFor flagging bugs which are compiler or service crashes or unclean exits, rather than bad outputDomain: JavaScriptThe issue relates to JavaScript specificallyDomain: Refactoringse.g. extract to constant or function, rename symbolEffort: CasualGood issue if you're already used to contributing to the codebase. Harder than "good first issue".Help WantedYou can do this

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions