Developers can use type hints to specify which type a function is expected to return. These annotations are not enforced at runtime and returning a different type might not fail. It is however likely to be unintended and will lead to maintainability issues, if not bugs.


This rule raises an issue when a function or method returns a value that contradicts its type hint.


== Noncompliant Code Example

----
def hello() -> str:
    return 42  # Noncompliant. Function's type hint asks for a string return value
----


== Compliant Solution

----
def hello() -> str:
    return "Hello"
----


== See

* https://docs.python.org/3/library/typing.html[Python documentation - Support for type hints]

ifdef::env-github,rspecator-view[]

'''
== Implementation Specification
(visible only on this page)

include::message.adoc[]

include::highlighting.adoc[]

endif::env-github,rspecator-view[]
