Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 7 Jun 2013 03:29:25 +0400
From:      Maxim Dounin <mdounin@mdounin.ru>
To:        Matthias Andree <mandree@FreeBSD.org>
Cc:        freebsd-net@freebsd.org
Subject:   Re: IN6_IS_ADDR_* macros use invalid type punning?
Message-ID:  <20130606232925.GU72282@mdounin.ru>
In-Reply-To: <51B0EFC2.1020406@FreeBSD.org>
References:  <51B0EFC2.1020406@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Hello!

On Thu, Jun 06, 2013 at 10:23:30PM +0200, Matthias Andree wrote:

> I am just staring at gcc 4.8 warnings when compiling the try.c code
> shown below:

[...]

> try.c:9:5: warning: dereferencing type-punned pointer will break
> strict-aliasing rules [-Wstrict-aliasing]
>      int r = IN6_IS_ADDR_V4MAPPED((&sin6.sin6_addr));
>      ^
> try.c:9:5: warning: dereferencing type-punned pointer will break
> strict-aliasing rules [-Wstrict-aliasing]

[...]

> Can we get these fixed in a reasonable timeframe?
> 
> To whom, or where, would I submit a patch for all the macros so that it
> actually gets committed to HEAD and MFC'd to /9 and /8?

Gleb already committed a fix for this 16 months ago 
(unfortunately, correct patch description was lost in transit):

http://svnweb.freebsd.org/base?view=revision&revision=230584

Probably it's a good idea to MFC the fix.

-- 
Maxim Dounin
http://nginx.org/en/donation.html



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20130606232925.GU72282>