On Tue, Nov 24, 2020 at 5:33 PM Peter Maydell <peter.mayd...@linaro.org>
wrote:

> On Tue, 24 Nov 2020 at 12:52, <marcandre.lur...@redhat.com> wrote:
> >
> > From: Marc-André Lureau <marcandre.lur...@redhat.com>
> >
> > Hi,
> >
> > Since commit efc6c07 ("configure: Add a test for the minimum compiler
> version=
> > "),
> > QEMU explicitely depends on GCC >= 4.8.
>
> You need to be a bit cautious about removing QEMU_GNUC_PREREQ()
> checks, because clang advertises itself as GCC 4.2 via the
> __GNUC__ and __GNUC_MINOR__ macros that QEMU_GNUC_PREREQ()
> tests, and so unless the code has explicitly handled clang
> via a different ifdef or feature test clang will be using
> the fallback codepath in cases like this. So you also need
> to find out whether all our supported versions of clang
> are OK with the gcc-4.4-and-up version of the code before
> removing any particular ifdef.
>
> Compare this previous (not-applied) patchset from Philippe:
>  https://patchew.org/QEMU/20200928125859.734287-1-phi...@redhat.com/
> which dealt with two of these ifdefs, one of which is
> "clearly OK" and the other of which is "needs more analysis".
> The path forward I think is along those lines -- we need
> one patch per ifdef we're trying to remove, and the commit
> message can then include the information about why in
> this case it is OK for clang too (or switch the ifdef
> to check for something else, eg one of clang's feature-specific
> test macros).
>


Thanks for pointing out the series, I missed it. Ok, I'll try to do some
more research.

-- 
Marc-André Lureau

Reply via email to