# Bug Report <!-- Please fill in each section completely. Thank you! --> ### π Search Terms typeguard exclude union <!-- What search terms did you use when trying to find an existing bug report? List them here so people in the future can find this one more easily. --> ### π Version & Regression Information v4.6.2 <!-- When did you start seeing this bug occur? "Bugs" that have existed in TS for a long time are very likely to be FAQs; refer to https://github.com/Microsoft/TypeScript/wiki/FAQ#common-bugs-that-arent-bugs If possible, please try testing the nightly version of TS to see if it's already been fixed. For npm: `typescript@next` This is also the 'Nightly' version in the playground: http://www.typescriptlang.org/play/?ts=Nightly Note: The TypeScript Playground can be used to try older versions of TypeScript. Please keep and fill in the line that best applies: --> - This is the behavior in every version I tried, and I reviewed the FAQ for entries about typeguards ### β― Playground Link <!-- A link to a TypeScript Playground "Share" link which shows this behavior The TypeScript Workbench can be used for more complex setups, try https://www.typescriptlang.org/dev/bug-workbench/ As a last resort, you can link to a repo, but these will be slower for us to investigate. --> [Playground link with relevant code](https://www.typescriptlang.org/play?#code/C4TwDgpgBAgnUF4oG8CwAoKWoGMBcUADBtlAEYECMGAvlAD4onb5QCiAHjgDYCuAJhAA8AO14BbMhABOAGiIA+Zlg5VaGDDgD2IgM7AoAQ0Qo6h3VF4iA1iK0B3EUYtwYG9AEsAZlAAUhgDocKABCBCRCAEojAI4gA) ### π» Code <!-- Please post the relevant code sample here as well--> ```ts type AAA = { c: 0 b: 1 } | { c: Exclude<number, 0> x: 1 } const a = {} as unknown as AAA if (a.c !== 0) a.x ``` ### π Actual behavior error ``` Property 'x' does not exist on type 'AAA'. Property 'x' does not exist on type '{ c: 0; b: 1; }'. ``` ### π Expected behavior no error