On 01/05/2010 02:09 AM, Joshua Haberman wrote:
> Erik Trulsson <ertr1013 <at> student.uu.se> writes:
>> On Mon, Jan 04, 2010 at 08:17:00PM +0000, Joshua Haberman wrote:
>>> The text you quoted does not contain any "shall not" language about
>>> dereferencing, so this conclusion does not follow.
>>
>> It doesn't have to use any "shall not" language.  If the standard does not
>> say that any particular action is allowed or otherwise defines what it
>> does, then that action implicitly has undefined behaviour.
> 
> Section 6.5 does define circumstances under which converted pointers may
> be dereferenced.

No.  It says

"An object shall have its stored value accessed only by an lvalue
expression that has one of the following types:

but

 (union u*)&i

is not a legal lvalue expression because the dereference is undefined
behaviour.  You may only dereference a pointer as permitted by 6.3.2.3.

Andrew.

Reply via email to