Hi!

Looking into pyregr test log, I found that this code crashes cython compiler:

print('\uXX')

Here is traceback:

/home/vitja/python/2.7/bin/python  ../cython.py -v x11.py -o x11.c
Compiling /home/vitja/work/cython-vitek.git/zzz/x11.py
Traceback (most recent call last):
  File "../cython.py", line 8, in <module>
    main(command_line = 1)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Main.py",
line 806, in main
    result = compile(sources, options)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Main.py",
line 781, in compile
    return compile_multiple(source, options)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Main.py",
line 753, in compile_multiple
    result = run_pipeline(source, options)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Main.py",
line 617, in run_pipeline
    err, enddata = context.run_pipeline(pipeline, source)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Main.py",
line 244, in run_pipeline
    data = phase(data)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Main.py",
line 567, in parse
    tree = context.parse(source_desc, scope, pxd = 0, full_module_name
= full_module_name)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Main.py",
line 506, in parse
    tree = Parsing.p_module(s, pxd, full_module_name)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 2810, in p_module
    body = p_statement_list(s, Ctx(level = level), first_statement = 1)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 1773, in p_statement_list
    stats.append(p_statement(s, ctx, first_statement = first_statement))
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 1766, in p_statement
    s, ctx, first_statement = first_statement)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 1627, in p_simple_statement_list
    stat = p_simple_statement(s, first_statement = first_statement)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 1597, in p_simple_statement
    node = p_print_statement(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 1093, in p_print_statement
    args.append(p_test(s))
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 123, in p_test
    expr = p_or_test(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 144, in p_or_test
    return p_rassoc_binop_expr(s, ('or',), p_and_test)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 147, in p_rassoc_binop_expr
    n1 = p_subexpr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 160, in p_and_test
    return p_rassoc_binop_expr(s, ('and',), p_not_test)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 147, in p_rassoc_binop_expr
    n1 = p_subexpr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 170, in p_not_test
    return p_comparison(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 176, in p_comparison
    n1 = p_starred_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 200, in p_starred_expr
    expr = p_bit_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 242, in p_bit_expr
    return p_binop_expr(s, ('|',), p_xor_expr)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 78, in p_binop_expr
    n1 = p_sub_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 247, in p_xor_expr
    return p_binop_expr(s, ('^',), p_and_expr)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 78, in p_binop_expr
    n1 = p_sub_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 252, in p_and_expr
    return p_binop_expr(s, ('&',), p_shift_expr)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 78, in p_binop_expr
    n1 = p_sub_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 257, in p_shift_expr
    return p_binop_expr(s, ('<<', '>>'), p_arith_expr)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 78, in p_binop_expr
    n1 = p_sub_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 262, in p_arith_expr
    return p_binop_expr(s, ('+', '-'), p_term)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 78, in p_binop_expr
    n1 = p_sub_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 267, in p_term
    return p_binop_expr(s, ('*', '/', '%', '//'), p_factor)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 78, in p_binop_expr
    n1 = p_sub_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 273, in p_factor
    return _p_factor(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 292, in _p_factor
    return p_power(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 354, in p_power
    n1 = p_atom(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 577, in p_atom
    result = p_testlist_comp(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 1012, in p_testlist_comp
    expr = p_test_or_starred_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 191, in p_test_or_starred_expr
    return p_test(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 123, in p_test
    expr = p_or_test(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 144, in p_or_test
    return p_rassoc_binop_expr(s, ('or',), p_and_test)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 147, in p_rassoc_binop_expr
    n1 = p_subexpr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 160, in p_and_test
    return p_rassoc_binop_expr(s, ('and',), p_not_test)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 147, in p_rassoc_binop_expr
    n1 = p_subexpr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 170, in p_not_test
    return p_comparison(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 176, in p_comparison
    n1 = p_starred_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 200, in p_starred_expr
    expr = p_bit_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 242, in p_bit_expr
    return p_binop_expr(s, ('|',), p_xor_expr)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 78, in p_binop_expr
    n1 = p_sub_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 247, in p_xor_expr
    return p_binop_expr(s, ('^',), p_and_expr)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 78, in p_binop_expr
    n1 = p_sub_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 252, in p_and_expr
    return p_binop_expr(s, ('&',), p_shift_expr)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 78, in p_binop_expr
    n1 = p_sub_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 257, in p_shift_expr
    return p_binop_expr(s, ('<<', '>>'), p_arith_expr)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 78, in p_binop_expr
    n1 = p_sub_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 262, in p_arith_expr
    return p_binop_expr(s, ('+', '-'), p_term)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 78, in p_binop_expr
    n1 = p_sub_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 267, in p_term
    return p_binop_expr(s, ('*', '/', '%', '//'), p_factor)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 78, in p_binop_expr
    n1 = p_sub_expr(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 273, in p_factor
    return _p_factor(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 292, in _p_factor
    return p_power(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 354, in p_power
    n1 = p_atom(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 600, in p_atom
    kind, bytes_value, unicode_value = p_cat_string_literal(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 682, in p_cat_string_literal
    kind, bytes_value, unicode_value = p_string_literal(s)
  File "/home/vitja/work/cython-vitek.git/Cython/Compiler/Parsing.py",
line 788, in p_string_literal
    chrval = int(systr[2:], 16)
ValueError: invalid literal for int() with base 16: ''


-- 
vitja.
_______________________________________________
Cython-dev mailing list
Cython-dev@codespeak.net
http://codespeak.net/mailman/listinfo/cython-dev

Reply via email to