You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Applying a DelayMeasures compilation pass to a specific circuit will result in a SIGABRT exit when accessing the circuit later.
Example and reproduction steps
Consider the following Python code:
importpytketfrompytket.passesimportDelayMeasurescircuit_tket=pytket.Circuit(4, 4)
circuit_tket.CX(0, 1)
circuit_tket.Measure(3, 1)
circuit_tket.Measure(1, 1)
circuit_tket.X(1)
circuit_tket.CCX(1, 3, 2)
circuit_tket.Measure(2, 2)
# Apply the DelayMeasures pass to the circuitprint(DelayMeasures().apply(circuit_tket))
# Attempt to print the commands of the modified circuitprint(circuit_tket.get_commands())
Observed
Executing the above code results in a critical assertion failure and the process terminates unexpectedly with a SIGABRT signal:
True
[tket] [critical] Assertion '!"slice is empty"' (../../src/Circuit/macro_circ_info.cpp : operator++ : 935) failed. Aborting.
Process finished with exit code 134 (interrupted by signal 6:SIGABRT)
The text was updated successfully, but these errors were encountered:
Overview
Applying a
DelayMeasures
compilation pass to a specific circuit will result in a SIGABRT exit when accessing the circuit later.Example and reproduction steps
Consider the following Python code:
Observed
Executing the above code results in a critical assertion failure and the process terminates unexpectedly with a SIGABRT signal:
The text was updated successfully, but these errors were encountered: