mingw-w64 and __attribute__((format(printf))) issue

Jakub Jelinek jakub@redhat.com
Tue May 12 12:02:55 GMT 2020


On Tue, May 12, 2020 at 11:14:02AM +0000, JonY wrote:
> >> I think option #3 is the simplest approach in the short term, though I
> >> prefer option #2.
> >>
> > 
> > This patch has been accepted by MSYS2 [1], tested for bootstrapping on
> > both i686 and x86_64.
> > 
> > So here comes a 4th option: Disable `-Werror` if `--disable-werror` is
> > specified to the top-level configure.
> > 
> > EGREP'ing for `(format|__format__)\s*\(\s*(__printf__|printf)` in GCC
> > source reveals ~30 matches (excluding testsuites). Probably they should
> > all be fixed similarly, or we ignore such warnings for simplicity.
> > libgomp doesn't build despite `--disable-werror` at top level, which
> > seems a bug in this case.
> > 
> > 
> > [1]
> > https://github.com/msys2/MINGW-packages/blob/9501ee2afc8d01dc7d85383e4b22e91c30d93ca7/mingw-w64-gcc/0020-libgomp-Don-t-hard-code-MS-printf-attributes.patch
> > 
> > 
> 
> Any thoughts on the libgomp printf attribute changes?

gomp_fatal etc. call vfprintf under the hood though, does that one handle
%llu on mingw?  If not, using %llu for the PRI* macros looks wrong to me.

	Jakub



More information about the Gcc-help mailing list