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