* For JSX Attributes, allow attributes to fulfill the member of any union member; rather than all of them
* Use cached way of getting partial union members
* Reuse methodology used for object literals for jsx attributes
* Inline assignment
* Rename type
* quickInfo: Don't check for `type === undefined`, check for `any`
* Fixes:
* We still want to do some work even if type is `any`
* Second test for `if (type)` is necessary because it might not have been assigned.
* Deduplicate inputfiles before running RWC tests
We deduplicate in the compiler, but we don't in the harness - this causes tests where the same file is listed multiple times in the arguments to not have the expected errors written, because we write out the same file multiple times when we should not.
* Don't completely omit both copied of duplicates
* Remove trailing whitespace
* Maintain list order while filtering duplicates
* Merge adjacent loops
1. `T[K]` now correctly produces `number` when
`K extends string, T extends Record<K, number>`.
2. `T[K]` no longer allows any type to be assigned to it when
`T extends object, K extends keyof T`.
Previously both of these cases failed in
getConstraintOfIndexedAccessType because both bases followed `K`'s base
constraint to `string` and then incorrectly produced `any` for types
(like `object`) with no string index signature. In (1), this produced an
error in checkBinaryLikeExpression`. In (2), this failed to produce an
error in `checkTypeRelatedTo`.
* When in a multi-line comment, we would have liked to use the start of
the comment as a reference point for the indentation inside the comment,
but determining the number of columns shifted for the comment start
woudl require determining the length w/r/t graphemes, which we do not
currently implement. We would like to avoid taking on a runtime
dependency on a grapheme-parsing library.
Instead, we look at the indentation level on the previoud line or start
of the comment as a reference point, and correct shift for lines
starting with an asterisk.