rocky / python-uncompyle6

A cross-version Python bytecode decompiler
GNU General Public License v3.0
3.74k stars 408 forks source link

TypeError: '>=' not supported between instances of 'str' and 'int' #467

Closed bieganski closed 1 year ago

bieganski commented 1 year ago

Traceback (most recent call last):
  File "/home/mateusz/venv/bin/uncompyle6", line 8, in <module>
    sys.exit(main_bin())
  File "/home/mateusz/venv/lib/python3.9/site-packages/uncompyle6/bin/uncompile.py", line 197, in main_bin
    result = main(src_base, out_base, pyc_paths, source_paths, outfile,
  File "/home/mateusz/venv/lib/python3.9/site-packages/uncompyle6/main.py", line 305, in main
    deparsed = decompile_file(
  File "/home/mateusz/venv/lib/python3.9/site-packages/uncompyle6/main.py", line 216, in decompile_file
    decompile(
  File "/home/mateusz/venv/lib/python3.9/site-packages/uncompyle6/main.py", line 143, in decompile
    deparsed = deparse_fn(
  File "/home/mateusz/venv/lib/python3.9/site-packages/uncompyle6/semantics/pysource.py", line 1289, in code_deparse
    deparsed.ast = deparsed.build_ast(
  File "/home/mateusz/venv/lib/python3.9/site-packages/uncompyle6/semantics/pysource.py", line 1223, in build_ast
    ast = python_parser.parse(self.p, tokens, customize, code)
  File "/home/mateusz/venv/lib/python3.9/site-packages/uncompyle6/parser.py", line 630, in parse
    ast = p.parse(tokens)
  File "/home/mateusz/venv/lib/python3.9/site-packages/spark_parser/spark.py", line 491, in parse
    self.makeSet(tokens, sets, i)
  File "/home/mateusz/venv/lib/python3.9/site-packages/spark_parser/spark.py", line 686, in makeSet
    invalid = self.reduce_is_invalid(rule, ast, self.tokens, parent, i)
  File "/home/mateusz/venv/lib/python3.9/site-packages/uncompyle6/parsers/parse36.py", line 644, in reduce_is_invalid
    invalid = super(Python36Parser,
  File "/home/mateusz/venv/lib/python3.9/site-packages/uncompyle6/parsers/parse3.py", line 1617, in reduce_is_invalid
    if fn(self, lhs, n, rule, ast, tokens, first, last):
  File "/home/mateusz/venv/lib/python3.9/site-packages/uncompyle6/parsers/reducecheck/ifstmt.py", line 10, in ifstmt
    if tokens[first].offset >= tokens[last].attr:
TypeError: '>=' not supported between instances of 'str' and 'int'
bieganski commented 1 year ago
uncompyle6 3.9.0
rocky commented 1 year ago

In the future read and follow the information that is requested in https://github.com/rocky/python-uncompyle6/issues/new?assignees=&labels=&projects=&template=bug-report.md .

Failure to do so may cause your issue to be closed and labeled as invalid.