Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

can't compare double to Literal #85

Open
belm0 opened this issue Jul 4, 2022 · 1 comment
Open

can't compare double to Literal #85

belm0 opened this issue Jul 4, 2022 · 1 comment
Labels
sp-correctness static python correctness staticpython static python issues

Comments

@belm0
Copy link
Contributor

belm0 commented Jul 4, 2022

Is it intentional that a double can't be compared to an integer literal?

    if plus >= 0:
      ^
compiler.errors.TypedSyntaxError: can't compare double to Literal[0]
@belm0
Copy link
Contributor Author

belm0 commented Jul 4, 2022

as an example, this restriction makes a strange situation like the following:

this code is OK:

def clamp(x: double, a: double, b: double) -> double:
    return a if x < a else b if x > b else x

...

clamp(foo, 0, 1)

but applying @inline to clamp causes the invocation to fail:

@inline
def clamp(x: double, a: double, b: double) -> double: ...

...

clamp(foo, 0, 1)
    return a if x < a else b if x > b else x
               ^
compiler.errors.TypedSyntaxError: can't compare double to Literal[0]

@carljm carljm added staticpython static python issues sp-correctness static python correctness labels Jul 12, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
sp-correctness static python correctness staticpython static python issues
Projects
None yet
Development

No branches or pull requests

2 participants