← Back to team overview

kicad-developers team mailing list archive

Re: Printing size_t on MSW (%zu)

 

Le 03/01/2020 à 15:58, Jon Evans a écrit :
> So maybe it's a 32-bits vs 64-bits thing.
> If you add a line like
> #define __USE_MINGW_ANSI_STDIO 1
> at the top of that source file, does it work?

No.
I still have the compil message:
warning: unknown conversion type character 'z' in format [-Wformat=]

> 
> On Fri, Jan 3, 2020 at 9:32 AM jp charras <jp.charras@xxxxxxxxxx
> <mailto:jp.charras@xxxxxxxxxx>> wrote:
> 
>     Le 03/01/2020 à 15:10, Jon Evans a écrit :
>     > I found it defined in
>     >
>     C:\msys64\mingw64\include\c++\8.3.0\x86_64-w64-mingw32\bits\os_defines.h
>     > on my machine.
>     > @JP -- what platform did you use (Windows version / MSYS version /
>     etc)
>     > where you saw the issue?
> 
>     I confirm the %zu is not working on my install.
> 
>     m_out->Print( aNestLevel+1, "(drawings %zu)\n",
>     aBoard->Drawings().size() );
> 
>     generates the warning:
>     warning: unknown conversion type character 'z' in format [-Wformat=]
> 
>     on my install:
> 
>     Platform: Windows 7 (build 7601, Service Pack 1), 32 bit, Little endian,
>     wxMSW
>     Build Info:
>         wxWidgets: 3.1.3 (wchar_t,wx containers)
>         Boost: 1.71.0
>         OpenCASCADE Community Edition: 6.8.0
>         Curl: 7.66.0
>         Compiler: GCC 9.2.0 with C++ ABI 1013
> 
>     And I never saw %zu working on my W7 32 bits install.
> 
> 
>     >
>     > On Fri, Jan 3, 2020 at 9:02 AM Seth Hillbrand <seth@xxxxxxxxxxxxx
>     <mailto:seth@xxxxxxxxxxxxx>
>     > <mailto:seth@xxxxxxxxxxxxx <mailto:seth@xxxxxxxxxxxxx>>> wrote:
>     >
>     >     On 2020-01-02 17:19, Jon Evans wrote:
>     >
>     >     > Hi all,
>     >     >
>     >     > Context:
>     >     >
>     https://gitlab.com/kicad/code/kicad/merge_requests/28#note_264910682
>     >     >
>     >     > I have heard there are issues using "%zu" format specifier on
>     >     > Windows/mingw, because mingw links against a very old
>     Windows library
>     >     > that does not support the C99 standard.
>     >     >
>     >     > I have also heard that this isn't an issue anymore because of
>     >     > __USE_MINGW_ANSI_STDIO in wxWidgets.
>     >     >
>     >     > I tried to reproduce this problem on my Windows 10 machine but
>     >     couldn't
>     >     > -- using %zu works fine.
>     >     >
>     >     > Does anyone know if this is still a problem on any of our
>     supported
>     >     > platforms?
>     >     >
>     >     > Thanks,
>     >     > -Jon
>     >
>     >     I learned that this was a problem from JP.  See commit
>     >     https://gitlab.com/kicad/code/kicad/commit/17b18637f
>     >
>     >     Perhaps he can shed some light on the specifics.
>     >
>     >     -S
>     >
>     >
>     >     Seth Hillbrand
>     >     KiCad Services Corporation
>     >     https://www.kipro-pcb.com
>     >     +1 530 302 5483 | +1 212 603 9372
>     >
>     >     _______________________________________________
>     >     Mailing list: https://launchpad.net/~kicad-developers
>     >     Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>     >     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx
>     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>>
>     >     Unsubscribe : https://launchpad.net/~kicad-developers
>     >     More help   : https://help.launchpad.net/ListHelp
>     >
> 
> 
>     -- 
>     Jean-Pierre CHARRAS
> 
>     _______________________________________________
>     Mailing list: https://launchpad.net/~kicad-developers
>     Post to     : kicad-developers@xxxxxxxxxxxxxxxxxxx
>     <mailto:kicad-developers@xxxxxxxxxxxxxxxxxxx>
>     Unsubscribe : https://launchpad.net/~kicad-developers
>     More help   : https://help.launchpad.net/ListHelp
> 


-- 
Jean-Pierre CHARRAS


Follow ups

References