On Tue, Nov 11, 2014 at 12:13:32PM +0100, Marc Glisse wrote: > On Tue, 11 Nov 2014, Marek Polacek wrote: > > >>@@ -7506,12 +7509,19 @@ > >> /* Finish up struct info used by -Wc++-compat. */ > >> > >> static void > >>-warn_cxx_compat_finish_struct (tree fieldlist) > >>+warn_cxx_compat_finish_struct (tree fieldlist, location_t record_loc) > >> { > >> unsigned int ix; > >> tree x; > >> struct c_binding *b; > >> > >>+ if (fieldlist == NULL_TREE) > >>+ { > >>+ warning_at (record_loc, OPT_Wc___compat, > >>+ "empty %s has size 0 in C, 1 in C++", > >>+ (struct_parse_info->code == RECORD_TYPE) ? "struct" : > >>"union"); > >>+ } > >>+ > > > >I think this won't work well wrt translations, so you need to have > >an if here. See the pedwarns at the beginning of finish_struct. > > Do keywords like struct/union really require translation?
C keywords don't require translation, but you always need to have complete sentences in diagnostics so I better pointed it out. Joseph would know better than me though. Marek