Currently, definitions in a noncomputable section that fail to compile do not get marked with noncomputable. The current check for noncomputable in the toMono pass checks for the attribute, but there is a second check in the IR phase for definitions without any IR. This still catches most issues, but it is possible for the use of a noncomputable definition to be erroneously optimized away between these two checks.
Currently, definitions in a
noncomputable sectionthat fail to compile do not get marked withnoncomputable. The current check fornoncomputablein thetoMonopass checks for the attribute, but there is a second check in theIRphase for definitions without any IR. This still catches most issues, but it is possible for the use of a noncomputable definition to be erroneously optimized away between these two checks.