Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 2 Apr 2014 20:58:21 +0100
From:      David Chisnall <theraven@FreeBSD.org>
To:        Michael Butler <imb@protected-networks.net>
Cc:        FreeBSD Current <freebsd-current@FreeBSD.org>
Subject:   Re: gcc compilation broken with SVN r264042
Message-ID:  <307BA2CF-E02A-4D82-B9E5-23AECAEA89DC@FreeBSD.org>
In-Reply-To: <533C6ABE.2000801@protected-networks.net>
References:  <533C61B8.7060809@protected-networks.net> <509CAA08-8F00-4ED8-81FF-A51F1ECDC15C@FreeBSD.org> <533C6ABE.2000801@protected-networks.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2 Apr 2014, at 20:53, Michael Butler <imb@protected-networks.net> =
wrote:

> cc (GCC) 4.2.1 20070831 patched [FreeBSD]
>=20
> .. on ..
>=20
> FreeBSD 11.0-CURRENT #22 r263969: Mon Mar 31 10:45:56 EDT 2014
>=20
> Splitting it like ..
>=20
> -       fn.fn_ptr.cxa_func =3D =
(void(*)(void*))GET_BLOCK_FUNCTION(func);
> +       fn.fn_ptr.cxa_func =3D
> +               (void(*)(void*))
> +               GET_BLOCK_FUNCTION(func);
>=20
> .. causes the reported error to point at the GET_BLOCK_FUNCTION.

Sorry, I meant split it into different statements.  Along the lines of:

struct generic_block *b =3D (struct generic_block*)func;
void (*fn)(void*,...) =3D b->invoke;
fn.fn_ptr.cxa_func =3D (void (*)(void*))fn;

> I guess it's time for me to migrate that box to clang :-)

Well, I wouldn't object to that, but it would be good to fix this - we =
still want to be able to build the base system with gcc (or another =
compiler), even if we don't encourage it...

David




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?307BA2CF-E02A-4D82-B9E5-23AECAEA89DC>