Skip to content

Panic on file rename with solution-style tsconfig.json #4066

@DanielRosenwasser

Description

@DanielRosenwasser
// @Filename: /tsconfig.json
{
  "files": [],
  "references": [
    { "path": "./src/tsconfig.json" }
  ]
}

// @Filename: /src/tsconfig.json
{
  "compilerOptions": {
    "composite": true
  },
  "files": ["./a.ts", "./b.ts"]
}

// @Filename: /src/a.ts
import { b } from "./b";
b;

// @Filename: /src/b.ts
export const b = 0;
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0x10 pc=0x7ff61c62352c]

goroutine 18 [running]:
github.com/microsoft/typescript-go/internal/compiler.(*Program).Options(...)
	d:/typescript-go/internal/compiler/program.go:373
github.com/microsoft/typescript-go/internal/ls.(*LanguageService).GetEditsForFileRename()
	d:/typescript-go/internal/ls/file_rename.go:37
github.com/microsoft/typescript-go/internal/lsp.(*Server).handleWillRenameFilesWorker()
	d:/typescript-go/internal/lsp/server.go:1385
github.com/microsoft/typescript-go/internal/lsp.(*Server).handleWillRenameFiles()
	d:/typescript-go/internal/lsp/server.go:1353
github.com/microsoft/typescript-go/internal/lsp.init.func1.registerRequestHandler[...].12()
	d:/typescript-go/internal/lsp/server.go:808
github.com/microsoft/typescript-go/internal/lsp.(*Server).handleRequestOrNotification()
	d:/typescript-go/internal/lsp/server.go:669
github.com/microsoft/typescript-go/internal/lsp.(*Server).dispatchLoop()
	d:/typescript-go/internal/lsp/server.go:538
github.com/microsoft/typescript-go/internal/lsp.(*Server).Run.func1()
	d:/typescript-go/internal/lsp/server.go:399
golang.org/x/sync/errgroup.(*Group).Go.func1()
	C:/Users/drosen/go/pkg/mod/golang.org/x/sync@v0.20.0/errgroup/errgroup.go:93
created by golang.org/x/sync/errgroup.(*Group).Go in goroutine 9
	C:/Users/drosen/go/pkg/mod/golang.org/x/sync@v0.20.0/errgroup/errgroup.go:78

Metadata

Metadata

Labels

CrashDomain: EditorRelated to the LSP server, editor experience

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions