Poor Yorick wrote:
I have a future statement in a script I intend to work on 2.6 and 3.  Shouldn't 
__future__ statements basically be noops for versions that already support the 
feature? doctest is complaining about compiler flags.  This illustrates the 
problem:

    Python 3.0 (r30:67507, Dec  3 2008, 20:14:27) [MSC v.1500 32 bit (Intel)] 
on win
    32
    Type "help", "copyright", "credits" or "license" for more information.
    >>> from __future__ import unicode_literals
    >>> src = 'a = "hello"'
    >>> c1 = compile(src,'<string>','exec',unicode_literals.compiler_flag)
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    ValueError: compile(): unrecognised flags

According to this "The optional arguments flags and dont_inherit control which future statements (see PEP 236) affect the compilation of source. If neither is present (or both are zero) the code is compiled with those future statements that are in effect in the code that is calling compile. " you do not need to duplicate the future option in the compile call.

I tried doing the same without the flag and it works. That said, this seems like a bug to me, so if no one explains otherwise, report it at
http://bugs.python.org

I tried with 5th param True and got same error.

On Winxp

tjr




--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to