### What kind of issue is this? - [x] React Compiler core (the JS output is incorrect, or your app works incorrectly after optimization) - [ ] babel-plugin-react-compiler (build issue installing or using the Babel plugin) - [ ] eslint-plugin-react-compiler (build issue installing or using the eslint plugin) - [ ] react-compiler-healthcheck (build issue installing or using the healthcheck script) ### Link to repro https://playground.react.dev/#N4Igzg9grgTgxgUxALhASwHYBcEwGYCGiABACoJhbAA6GxxOlyxlMmA5gNy0C+ttCAB4AHCDCzE4EDJTIUsAIRgQA1gjoBeYgAoAlMQ0A+YjTqTpsgNqMsAGhYIs5SgF0DtevQBKCIlgB0UGAIAMpYBDjEADxysgA+xBhQADbJxMbaSam63BgexDCOsHTa+fRRhmWeUQBGUFhY0sTSAMLJaHAqBiZ6BsY2BlpZaQD8Dk7y2sA2yNQgNnM8+szBE5SZKcm6PMakEOzsyQjRAPR1DdKVZp7R5410ACZoYAQ1Rw8awACENjzNGG0OiotMBekYpDIIEd-Ml9tobF9-DZtsYAApsbCnO6XKpRE5Xei6Xj8DBCUTicwyCTOLAtMSFOASLRg4ymegQqw2eyrGluDRVHx+QLBMIRY4xGnEBLDdI6YY5En0QpYYo6XEEm63er3f6AzqfFkMeSDRKbYhjHmTYBGpjEOYLEDEJbEFaOGkbbI7Mj7Q7is7anHXarYx7PV7vT4-eR-VrtfWg-RGEzENB4HTIymQaGw9jw+RI+T6Hhe9GYCR4kMa8r4-JEvIYHggHhAA ### Repro steps running the following code will result in a `Cannot read properties of null (reading 'test')` ```ts interface Test{ test: string; } export const TestBroken = () => { const [test, setTest] = React.useState < Test | null > (null); return ( <> <button onClick = {() => test == null ? setTest({test:"test"}) : setTest(null)}> Toggle </button> <button disabled={!test} onClick= {() =>console.log(test!.test)}> Print </button> </> ) } ``` this code runs fine when changing the non-null assertion into an if statement: ```diff - <button disabled={!test} onClick= {() =>console.log(test!.test)}> Print </button> + <button disabled={!test} onClick={() => { if (test) console.log(test.test) }}> Print </button> ``` ### How often does this bug happen? Every time ### What version of React are you using? 19.1.0 ### What version of React Compiler are you using? 19.1.0-rc.1
This issue appears to be discussing a feature request or bug report related to the repository. Based on the content, it seems to be still under discussion. The issue was opened by FrancescoLuzzi and has received 2 comments.