Microsoft/TypeScript
GitHub ã§èŠãIntersection for same key read-only property maybe wrong
Open
#61,344 opened on 2025幎3æ4æ¥
BugDomain: IntersectionHelp Wanted
Repository metrics
- Stars
- Â (48,455 stars)
- PR merge metrics
-  (å¹³åããŒãž 6d 17h) (30d ã§ 9 merged PRs)
説æ
ð Search Terms
Intersection readonly property
ð Version & Regression Information
- This changed between versions 4.4.4 and 4.5.5 (But all versions have errors)
⯠Playground Link
ð» Code
type A = { k: number }
type B = { readonly k: number }
({} as A & B).k = 0;
({} as B & A).k = 0;
type MakeWritable<T> = { -readonly [K in keyof T]: T[K] };
type C = MakeWritable<B>;
({} as C).k = 0;
({} as C & B).k = 0;
({} as B & C).k = 0;
ð Actual behavior
command:
z:\webdl\test>tsc --target esnext --lib esnext test.ts
output:
test.ts:15:15 - error TS2540: Cannot assign to 'k' because it is a read-only property.
15 ({} as C & B).k = 0;
~
test.ts:16:15 - error TS2540: Cannot assign to 'k' because it is a read-only property.
16 ({} as B & C).k = 0;
~
Found 2 errors in the same file, starting at: test.ts:15
ð Expected behavior
no error.
Additional information about the issue
No response