2018-03-11 20:57 GMT-03:00 Jonathan de Boyne Pollard:
>
> The macro generates no warning in the GNU C library in Debian 9, but I
> should have caught that overload that was not passing by reference.  It is
> fixed now, thank you. The in-development source archive for 1.38 is in the
> usual place.

Yes, both G++ warnings are gone now. BTW, the removal of the macros
from <sys/types.h> has already been committed, so it looks like it is
going to happen for GNU libc version 2.28:

*  
https://sourceware.org/git/?p=glibc.git;a=commit;h=e16deca62e16f645213dffd4ecd1153c37765f17

However, a new warning has appeared:

In file included from set-control-group-knob.cpp:23:0:
popt.h:85:16: warning: 'virtual bool
popt::table_definition::execute(popt::processor&, char, const char*)'
was hidden [-Woverloaded-virtual]
   virtual bool execute(processor &, char c, const char * s);
                ^~~~~~~
popt.h:100:16: warning:   by 'popt::top_table_definition::execute'
[-Woverloaded-virtual]
   virtual bool execute(processor &, const char * s);
                ^~~~~~~

I believe this is because the 1.38 development version dropped a
'using table_definition::execute;' declaration from the definition of
class popt::top_table_definition that was present in 1.37, so the
three parameter version of popt::table_definition::execute() would now
be hidden. I only did a quick 'redo set-control-group-knob.o' test, so
I'm not sure if it is important or if it affects anything, though.

Thanks,
G.

Reply via email to