diff --git a/CHANGELOG.rst b/CHANGELOG.rst index b5f5a982ce04..4d2acfecbf69 100644 --- a/CHANGELOG.rst +++ b/CHANGELOG.rst @@ -16,10 +16,10 @@ The format is based on `Keep a Changelog`_. - **Fixed**: for any bug fixes. - **Security**: in case of vulnerabilities. - `UNRELEASED`_ ============= + Added ----- @@ -87,6 +87,7 @@ Deprecated Fixed ----- +- Fixed #1892, whereby inheriting from QuantumRegister or ClassicalRegister would cause a QiskitError in instruction.py - Fixed #829 by removing dependence on scipy unitary_group (#1857). - Fixed a bug with measurement sampling optimization in BasicAer qasm_simulator (#1624). diff --git a/qiskit/circuit/instruction.py b/qiskit/circuit/instruction.py index 8e9e9aeafcf1..b5def64db347 100644 --- a/qiskit/circuit/instruction.py +++ b/qiskit/circuit/instruction.py @@ -48,9 +48,9 @@ def __init__(self, name, params, qargs, cargs, circuit=None): Raises: QiskitError: when the register is not in the correct format. """ - if not all((type(i[0]), type(i[1])) == (QuantumRegister, int) for i in qargs): + if not all(isinstance(i[0], QuantumRegister) and isinstance(i[1], int) for i in qargs): raise QiskitError("qarg not (QuantumRegister, int) tuple") - if not all((type(i[0]), type(i[1])) == (ClassicalRegister, int) for i in cargs): + if not all(isinstance(i[0], ClassicalRegister) and isinstance(i[1], int) for i in cargs): raise QiskitError("carg not (ClassicalRegister, int) tuple") self.name = name self.params = [] # a list of gate params stored