While working on #1569, I struggled with the fact that it is up to the conversions between QC and QCO to catch an ill-formed program that mixes static qubits with dynamically allocated ones in a single program.
This should not be the responsibility of a conversion, but rather of a verifier in the respective dialects. The conversions may assume that they are passed valid IR.
I have removed the respective code from the conversions in #1569. This is meant as a tracking issue for adding back respective IR verifiers in a follow-up.
While working on #1569, I struggled with the fact that it is up to the conversions between QC and QCO to catch an ill-formed program that mixes static qubits with dynamically allocated ones in a single program.
This should not be the responsibility of a conversion, but rather of a verifier in the respective dialects. The conversions may assume that they are passed valid IR.
I have removed the respective code from the conversions in #1569. This is meant as a tracking issue for adding back respective IR verifiers in a follow-up.