This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [libcpp+C++ PATCH] Fix -Wempty-body C++ warning (PR c++/36478)


>From a technical perspective, I think this patch makes sense.  In
particular, using a flag from the preprocessor, rather than poking at
location information, seems OK to me.

But, do we really want to warn about:

  while (0);

but not:

  while (0) ;

?

That seems surprising to me.

I can understand not warning about:

  while (0)
    ;

which seems a more explicit indication that the user has an infinite
loop there.

If we're using the single space as a way of making -save-temps work
(because an empty macro gets replaced with a space), I think that's just
as fragile a hack as we had before.  If we really need to make
-save-temps work, then we need -save-temps to emit something explicit to
mark the presence of the macro.

But, I also don't see it as a crisis if -save-temps doesn't work in this
particular case.  Once we decide that the presence of a macro is a
significant fact, we also accept that preprocessing the code is going to
result in a change.  That might argue that using the presence of a macro
is a mistake...

-- 
Mark Mitchell
CodeSourcery
mark@codesourcery.com
(650) 331-3385 x713


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]