Serhiy Storchaka <storch...@gmail.com> added the comment:

> If we're worrying about undefined behaviour, it looks like recent 
> optimizations have *introduced* new undefined behaviour in the form of strict 
> aliasing violations.  E.g., from ascii_decode:
> 
>     unsigned long value = *(const unsigned long *) _p;
> 
> (here _p has type const char *).

I don't see what the undefined behavior. Can you specify exactly the
item of the Standard, in which it is mentioned?

>   This should really be fixed;  compilers are known to make optimizations 
> based on the assumption that this sort of undefined behaviour doesn't occur.

I don't know how else you can rewrite it, without destroying completely
the effect of optimization.

In any case, I don't think that the original patch introduces some new
undefined behavior.

----------

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue15144>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to