Benjamin Peterson wrote:
> def engage_py3k_warning():
>      flag = ctypes.c_int.in_dll(ctypes.pythonapi, "Py_Py3kWarningFlag")
>      flag.value = 1

Note that tricks like this won't necessarily enable all python 3
warnings for modules that have been imported before the flag gets set.
To avoid unnecessary performance penalties as a result of Py3k warnings,
modules are permitted to do things like:

def func():
  # Do whatever

if sys.py3kwarning:
  _orig_func = func
  def func():
    warnings.py3kwarn("Goes away in 3.0")
    _orig_func()

Modules that are first imported after the flag has been set will
obviously have all of their warnings properly enabled.

Cheers,
Nick.


-- 
Nick Coghlan   |   [EMAIL PROTECTED]   |   Brisbane, Australia
---------------------------------------------------------------
            http://www.boredomandlaziness.org
_______________________________________________
Python-Dev mailing list
Python-Dev@python.org
http://mail.python.org/mailman/listinfo/python-dev
Unsubscribe: 
http://mail.python.org/mailman/options/python-dev/archive%40mail-archive.com

Reply via email to