• Jeremy Hylton's avatar
    SF Patch [ 429024 ] deal with some unary ops at compile time · d5e5a2aa
    Jeremy Hylton yazdı
    Revised version of Fred's patch, including support for ~ operator.
    
    If the unary +, -, or ~ operator is applied to a constant, don't
    generate a UNARY_xxx opcode. Just store the approriate value as a
    constant.  If the value is negative, extend the string containing the
    constant and insert a negative in the 0th position.
    
    For ~, compute the inverse of int and longs and use them directly, but
    be prepared to generate code for all other possibilities (invalid
    numbers, floats, complex).
    d5e5a2aa
compile.c 123 KB