Hello.
As of v3.1.0 _iob* is defined slightly different on the two locations,
whcar.h:46-61 and stdio.h:82-96.
The two definitions should probably be factored out to an internal shared
header between the two above or at least be identical.
Thanks, Yaron
2013-12-11 15:02 GMT+02:00 Yaron Keren <yaron.ke...@gmail.com>:
> Hello,
>
> stdio.h:82-96
>
> #ifndef _STDIO_DEFINED
> #ifdef _WIN64
> _CRTIMP FILE *__cdecl __iob_func(void);
> #define _iob __iob_func()
> #else
> #ifdef _MSVCRT_
> extern FILE _iob[]; /* A pointer to an array of FILE */
> #define __iob_func() (_iob)
> #else
> extern FILE (* __MINGW_IMP_SYMBOL(_iob))[]; /* A pointer to an array of
> FILE */
> #define __iob_func() (* __MINGW_IMP_SYMBOL(_iob))
> #define _iob __iob_func()
> #endif
> #endif
> #endif
>
> is inconsistent with wchar.h:46-58
>
> #ifndef _STDIO_DEFINED
> #ifdef _WIN64
> _CRTIMP FILE *__cdecl __iob_func(void);
> #define _iob __iob_func()
> #else
> #ifdef _MSVCRT_
> extern FILE _iob[]; /* A pointer to an array of FILE */
> #define __iob_func() (_iob)
> #else
> extern FILE (* __MINGW_IMP_SYMBOL(_iob))[]; /* A pointer to an array of
> FILE */
> #define __iob_func() (* __MINGW_IMP_SYMBOL(_iob))
> #endif
> #endif
>
> #define _iob __iob_func()
> #endif
>
> due to the different location of #define _iob __iob_func().
>
> I believe the stdio.h version is correct.
> In any case, both files definitions should be identical.
>
------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/NeoTech
_______________________________________________
Mingw-w64-public mailing list
Mingw-w64-public@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public