ID: py/illegal-raise Kind: problem Severity: error Precision: very-high Tags: - reliability - correctness - types Query suites: - python-security-and-quality.qls
Click to see the query in the CodeQL repository
If the object raised is not a legal Exception class or an instance of one, then a
TypeError will be raised instead.
Legal exception classes are:
Any old-style classes (Python 2 only)
Any subclass of the builtin class
BaseExceptionHowever, it recommended that you only use subclasses of the builtin class
Exception(which is itself a subclass of
Change the expression in the
raise statement to be a legal exception.
#Cannot raise an int, even if we want to def raise_int(): #Will raise a TypeError raise 4
Python Language Reference: Exceptions.
Python Tutorial: Handling Exceptions.