1
0
mirror of https://git.code.sf.net/p/mingw-w64/mingw-w64 synced 2025-04-18 17:44:18 +03:00

crt,headers: Use headers to redirect __ms_v*scanf functions to v*scanf functions.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
This commit is contained in:
Jacek Caban 2025-03-22 13:30:43 +01:00
parent 90da6c6535
commit 28d2ed32cb
21 changed files with 27 additions and 170 deletions

View File

@ -306,17 +306,11 @@ src_msvcrt_add_vscanf=\
stdio/scanf2-argcount-char.c \
stdio/scanf2-argcount-wchar.c \
stdio/vfscanf.c \
stdio/vfscanf2.S \
stdio/vfwscanf.c \
stdio/vfwscanf2.S \
stdio/vscanf.c \
stdio/vscanf2.S \
stdio/vsscanf.c \
stdio/vsscanf2.S \
stdio/vswscanf.c \
stdio/vswscanf2.S \
stdio/vwscanf.c \
stdio/vwscanf2.S
stdio/vwscanf.c
# Files included in libmsvcrt-os.a (for msvcrt.dll) on all archs
src_msvcrt=\
@ -4246,8 +4240,7 @@ EXTRA_DIST += revstamp.h \
profile/gcrt0.c \
profile/COPYING \
profile/CYGWIN_LICENSE \
stdio/scanf2-argcount-template.c \
stdio/scanf2-template.S
stdio/scanf2-argcount-template.c
DISTCHECK_CONFIGURE_FLAGS = --host=$(host_triplet) $(withsys)

View File

@ -552,14 +552,6 @@ __ms_vsprintf == vsprintf
__ms_vwprintf == vwprintf
__ms_wprintf == wprintf
__ms_wscanf == wscanf
#ifdef WITH_MS_VSCANF_ALIASES
__ms_vfscanf == vfscanf
__ms_vfwscanf == vfwscanf
__ms_vscanf == vscanf
__ms_vsscanf == vsscanf
__ms_vswscanf == vswscanf
__ms_vwscanf == vwscanf
#endif
#endif
; This is list of additional symbol aliases not available in any library as neither native symbols nor aliases

View File

@ -2335,5 +2335,4 @@ wscanf_s
#define CRTAPP
#define USE_WCSTOK_S_FOR_WCSTOK
#define WITH_MS_VSCANF_ALIASES
#include "crt-aliases.def.in"

View File

@ -2297,5 +2297,4 @@ wscanf
wscanf_s
#define USE_WCSTOK_S_FOR_WCSTOK
#define WITH_MS_VSCANF_ALIASES
#include "crt-aliases.def.in"

View File

@ -2253,5 +2253,4 @@ wscanf
wscanf_s
#define USE_WCSTOK_S_FOR_WCSTOK
#define WITH_MS_VSCANF_ALIASES
#include "crt-aliases.def.in"

View File

@ -2221,5 +2221,4 @@ wscanf
wscanf_s
#define USE_WCSTOK_S_FOR_WCSTOK
#define WITH_MS_VSCANF_ALIASES
#include "crt-aliases.def.in"

View File

@ -1,32 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#if defined(_ARM_) || defined(__arm__)
.thumb
#endif
.text
.p2align 4,,15
.globl FCT
.def FCT; .scl 2; .type 32; .endef
#ifdef __x86_64__
.seh_proc FCT
#endif
FCT:
#ifdef __x86_64__
.seh_endprologue
#endif
#if defined(_AMD64_) || defined(__x86_64__) || defined(_X86_) || defined(__i386__)
jmp FWD
#elif defined(_ARM_) || defined(__arm__)
.thumb_func
b FWD
#elif defined(_ARM64_) || defined(__aarch64__)
b FWD
#endif
#ifdef __x86_64__
.seh_endproc
#endif
.def FWD; .scl 2; .type 32; .endef

View File

@ -17,7 +17,7 @@ extern int __ms_vfscanf_internal (
extern size_t __ms_scanf_max_arg_count_internal (const char * format);
int __ms_vfscanf (FILE * __restrict__ stream, const char * __restrict__ format, va_list arg)
int vfscanf (FILE * __restrict__ stream, const char * __restrict__ format, va_list arg)
{
size_t count = __ms_scanf_max_arg_count_internal (format);
int ret;

View File

@ -1,12 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
#define FCT __MINGW_USYMBOL(vfscanf)
#define FWD __MINGW_USYMBOL(__ms_vfscanf)
.file "vfscanf2.S"
#include "scanf2-template.S"

View File

@ -17,7 +17,7 @@ extern int __ms_vfwscanf_internal (
extern size_t __ms_wscanf_max_arg_count_internal (const wchar_t * format);
int __ms_vfwscanf (FILE * __restrict__ stream,
int vfwscanf (FILE * __restrict__ stream,
const wchar_t * __restrict__ format, va_list arg)
{
size_t count = __ms_wscanf_max_arg_count_internal (format);

View File

@ -1,12 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
#define FCT __MINGW_USYMBOL(vfwscanf)
#define FWD __MINGW_USYMBOL(__ms_vfwscanf)
.file "vfwscanf2.S"
#include "scanf2-template.S"

View File

@ -9,7 +9,7 @@
#include <stdarg.h>
#include <stdio.h>
int __ms_vscanf(const char * __restrict__ format, va_list arg)
int vscanf(const char * __restrict__ format, va_list arg)
{
return __ms_vfscanf(stdin, format, arg);
}

View File

@ -1,12 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
#define FCT __MINGW_USYMBOL(vscanf)
#define FWD __MINGW_USYMBOL(__ms_vscanf)
.file "vscanf2.S"
#include "scanf2-template.S"

View File

@ -17,7 +17,7 @@ extern int __ms_vsscanf_internal (
extern size_t __ms_scanf_max_arg_count_internal (const char * format);
int __ms_vsscanf (const char * __restrict__ s,
int vsscanf (const char * __restrict__ s,
const char * __restrict__ format, va_list arg)
{
size_t count = __ms_scanf_max_arg_count_internal (format);

View File

@ -1,12 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
#define FCT __MINGW_USYMBOL(vsscanf)
#define FWD __MINGW_USYMBOL(__ms_vsscanf)
.file "vsscanf2.S"
#include "scanf2-template.S"

View File

@ -17,7 +17,7 @@ extern int __ms_vswscanf_internal (
extern size_t __ms_wscanf_max_arg_count_internal (const wchar_t * format);
int __ms_vswscanf(const wchar_t * __restrict__ s, const wchar_t * __restrict__ format,
int vswscanf(const wchar_t * __restrict__ s, const wchar_t * __restrict__ format,
va_list arg)
{
size_t count = __ms_wscanf_max_arg_count_internal (format);

View File

@ -1,12 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
#define FCT __MINGW_USYMBOL(vswscanf)
#define FWD __MINGW_USYMBOL(__ms_vswscanf)
.file "vswscanf2.S"
#include "scanf2-template.S"

View File

@ -10,7 +10,7 @@
#include <wchar.h>
#include <stdio.h>
int __ms_vwscanf (const wchar_t * __restrict__ format, va_list arg)
int vwscanf (const wchar_t * __restrict__ format, va_list arg)
{
return __ms_vfwscanf(stdin, format, arg);
}

View File

@ -1,12 +0,0 @@
/**
* This file has no copyright assigned and is placed in the Public Domain.
* This file is part of the mingw-w64 runtime package.
* No warranty is given; refer to the file DISCLAIMER.PD within this package.
*/
#include <_mingw_mac.h>
#define FCT __MINGW_USYMBOL(vwscanf)
#define FWD __MINGW_USYMBOL(__ms_vwscanf)
.file "vwscanf2.S"
#include "scanf2-template.S"

View File

@ -211,7 +211,7 @@ extern
extern
__MINGW_MS_SCANF(2, 0) __MINGW_ATTRIB_NONNULL(2)
int __cdecl __ms_vsscanf(const char * __restrict__ _Str,const char * __restrict__ _Format,va_list argp)
__MINGW_UCRT_ASM_CALL(vsscanf);
__MINGW_ASM_CALL(vsscanf);
extern
__MINGW_MS_SCANF(1, 2) __MINGW_ATTRIB_NONNULL(1)
int __cdecl __ms_scanf(const char * __restrict__ _Format,...)
@ -219,7 +219,7 @@ extern
extern
__MINGW_MS_SCANF(1, 0) __MINGW_ATTRIB_NONNULL(1)
int __cdecl __ms_vscanf(const char * __restrict__ _Format,va_list argp)
__MINGW_UCRT_ASM_CALL(vscanf);
__MINGW_ASM_CALL(vscanf);
extern
__MINGW_MS_SCANF(2, 3) __MINGW_ATTRIB_NONNULL(2)
int __cdecl __ms_fscanf(FILE * __restrict__ _File,const char * __restrict__ _Format,...)
@ -227,7 +227,7 @@ extern
extern
__MINGW_MS_SCANF(2, 0) __MINGW_ATTRIB_NONNULL(2)
int __cdecl __ms_vfscanf(FILE * __restrict__ _File,const char * __restrict__ _Format,va_list argp)
__MINGW_UCRT_ASM_CALL(vfscanf);
__MINGW_ASM_CALL(vfscanf);
extern
__MINGW_MS_PRINTF(1, 2) __MINGW_ATTRIB_NONNULL(1)
@ -518,16 +518,11 @@ int vsnprintf (char *__stream, size_t __n, const char *__format, __builtin_va_li
#endif
__MINGW_MS_SCANF(2, 0) __MINGW_ATTRIB_NONNULL(2)
int vfscanf (FILE *__stream, const char *__format, __builtin_va_list __local_argv)
__MINGW_ASM_CALL(__ms_vfscanf);
int vfscanf (FILE *__stream, const char *__format, __builtin_va_list __local_argv);
__MINGW_MS_SCANF(2, 0) __MINGW_ATTRIB_NONNULL(2)
int vsscanf (const char * __restrict__ __source, const char * __restrict__ __format, __builtin_va_list __local_argv)
__MINGW_ASM_CALL(__ms_vsscanf);
int vsscanf (const char * __restrict__ __source, const char * __restrict__ __format, __builtin_va_list __local_argv);
__MINGW_MS_SCANF(1, 0) __MINGW_ATTRIB_NONNULL(1)
int vscanf(const char *__format, __builtin_va_list __local_argv)
__MINGW_ASM_CALL(__ms_vscanf);
int vscanf(const char *__format, __builtin_va_list __local_argv);
#ifdef __GNUC__
#pragma GCC diagnostic pop
@ -948,19 +943,19 @@ int vsprintf (char * __restrict__ __stream, const char * __restrict__ __format,
__MINGW_UCRT_ASM_CALL(swscanf);
/* __attribute__((__format__ (ms_wscanf, 2, 0))) */ __MINGW_ATTRIB_NONNULL(2)
int __cdecl __ms_vswscanf(const wchar_t * __restrict__ _Src,const wchar_t * __restrict__ _Format,va_list)
__MINGW_UCRT_ASM_CALL(vswscanf);
__MINGW_ASM_CALL(vswscanf);
/* __attribute__((__format__ (ms_wscanf, 1, 2))) */ __MINGW_ATTRIB_NONNULL(1)
int __cdecl __ms_wscanf(const wchar_t * __restrict__ _Format,...)
__MINGW_UCRT_ASM_CALL(wscanf);
/* __attribute__((__format__ (ms_wscanf, 1, 0))) */ __MINGW_ATTRIB_NONNULL(1)
int __cdecl __ms_vwscanf(const wchar_t * __restrict__ _Format, va_list)
__MINGW_UCRT_ASM_CALL(vwscanf);
__MINGW_ASM_CALL(vwscanf);
/* __attribute__((__format__ (ms_wscanf, 2, 3))) */ __MINGW_ATTRIB_NONNULL(2)
int __cdecl __ms_fwscanf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...)
__MINGW_UCRT_ASM_CALL(fwscanf);
/* __attribute__((__format__ (ms_wscanf, 2, 0))) */ __MINGW_ATTRIB_NONNULL(2)
int __cdecl __ms_vfwscanf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,va_list)
__MINGW_UCRT_ASM_CALL(vfwscanf);
__MINGW_ASM_CALL(vfwscanf);
/* __attribute__((__format__ (ms_wprintf, 2, 3))) */ __MINGW_ATTRIB_NONNULL(2)
int __cdecl __ms_fwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
@ -1128,16 +1123,13 @@ int vsnwprintf (wchar_t *__stream, size_t __n, const wchar_t *__format, __builti
int __cdecl wscanf(const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
#ifndef __NO_ISOCEXT /* externs in libmingwex.a */
__MINGW_ATTRIB_NONNULL(2)
int vfwscanf (FILE *__stream, const wchar_t *__format, __builtin_va_list __local_argv)
__MINGW_ASM_CALL(__ms_vfwscanf);
int vfwscanf (FILE *__stream, const wchar_t *__format, __builtin_va_list __local_argv);
__MINGW_ATTRIB_NONNULL(2)
int vswscanf (const wchar_t * __restrict__ __source, const wchar_t * __restrict__ __format, __builtin_va_list __local_argv)
__MINGW_ASM_CALL(__ms_vswscanf);
int vswscanf (const wchar_t * __restrict__ __source, const wchar_t * __restrict__ __format, __builtin_va_list __local_argv);
__MINGW_ATTRIB_NONNULL(1)
int vwscanf(const wchar_t *__format, __builtin_va_list __local_argv)
__MINGW_ASM_CALL(__ms_vwscanf);
int vwscanf(const wchar_t *__format, __builtin_va_list __local_argv);
#endif /* __NO_ISOCEXT */

View File

@ -343,19 +343,19 @@ _CRTIMP FILE *__cdecl __acrt_iob_func(unsigned index);
__MINGW_UCRT_ASM_CALL(swscanf);
/* __attribute__((__format__ (ms_wscanf, 2, 0))) */ __MINGW_ATTRIB_NONNULL(2)
int __cdecl __ms_vswscanf(const wchar_t * __restrict__ _Src,const wchar_t * __restrict__ _Format,va_list)
__MINGW_UCRT_ASM_CALL(vswscanf);
__MINGW_ASM_CALL(vswscanf);
/* __attribute__((__format__ (ms_wscanf, 1, 2))) */ __MINGW_ATTRIB_NONNULL(1)
int __cdecl __ms_wscanf(const wchar_t * __restrict__ _Format,...)
__MINGW_UCRT_ASM_CALL(wscanf);
/* __attribute__((__format__ (ms_wscanf, 1, 0))) */ __MINGW_ATTRIB_NONNULL(1)
int __cdecl __ms_vwscanf(const wchar_t * __restrict__ _Format, va_list)
__MINGW_UCRT_ASM_CALL(vwscanf);
__MINGW_ASM_CALL(vwscanf);
/* __attribute__((__format__ (ms_wscanf, 2, 3))) */ __MINGW_ATTRIB_NONNULL(2)
int __cdecl __ms_fwscanf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...)
__MINGW_UCRT_ASM_CALL(fwscanf);
/* __attribute__((__format__ (ms_wscanf, 2, 0))) */ __MINGW_ATTRIB_NONNULL(2)
int __cdecl __ms_vfwscanf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,va_list)
__MINGW_UCRT_ASM_CALL(vfwscanf);
__MINGW_ASM_CALL(vfwscanf);
/* __attribute__((__format__ (ms_wprintf, 2, 3))) */ __MINGW_ATTRIB_NONNULL(2)
int __cdecl __ms_fwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);
@ -489,26 +489,14 @@ __MINGW_ASM_CALL(__mingw_vsnwprintf);
int __cdecl swscanf(const wchar_t * __restrict__ _Src,const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
int __cdecl wscanf(const wchar_t * __restrict__ _Format,...) __MINGW_ATTRIB_DEPRECATED_SEC_WARN;
#ifndef __NO_ISOCEXT /* externs in libmingwex.a */
__mingw_ovr
__MINGW_ATTRIB_NONNULL(2)
int vfwscanf (FILE *__stream, const wchar_t *__format, __builtin_va_list __local_argv)
{
return __ms_vfwscanf (__stream, __format, __local_argv);
}
int vfwscanf (FILE *__stream, const wchar_t *__format, __builtin_va_list __local_argv);
__mingw_ovr
__MINGW_ATTRIB_NONNULL(2)
int vswscanf (const wchar_t * __restrict__ __source, const wchar_t * __restrict__ __format, __builtin_va_list __local_argv)
{
return __ms_vswscanf( __source, __format, __local_argv );
}
__mingw_ovr
int vswscanf (const wchar_t * __restrict__ __source, const wchar_t * __restrict__ __format, __builtin_va_list __local_argv);
__MINGW_ATTRIB_NONNULL(1)
int vwscanf(const wchar_t *__format, __builtin_va_list __local_argv)
{
return __ms_vwscanf (__format, __local_argv);
}
int vwscanf(const wchar_t *__format, __builtin_va_list __local_argv);
#endif /* __NO_ISOCEXT */
int __cdecl fwprintf(FILE * __restrict__ _File,const wchar_t * __restrict__ _Format,...);