With the new FIR transformation passes, more advanced patterns in Q# can successfully generate QIR. However, these passes are run by the language service for editor feedback and during codegen to prepare for emitting QIR, but are not run when the code is executed (either by the run command or the debug command). This means that patterns that are only supported via FIR transform will appear error clean in the editor and then generate errors when run. See for example this playground code.
We should decide if we want to run the full FIR pipeline ahead of execution AND use the resulting transformed package, or just run the pipeline for the errors but use the original package for execution/debugging.
With the new FIR transformation passes, more advanced patterns in Q# can successfully generate QIR. However, these passes are run by the language service for editor feedback and during codegen to prepare for emitting QIR, but are not run when the code is executed (either by the run command or the debug command). This means that patterns that are only supported via FIR transform will appear error clean in the editor and then generate errors when run. See for example this playground code.
We should decide if we want to run the full FIR pipeline ahead of execution AND use the resulting transformed package, or just run the pipeline for the errors but use the original package for execution/debugging.