mirror of
https://forge.sourceware.org/marek/gcc.git
synced 2026-02-22 03:47:02 -05:00
Darwin, fixincludes: Handle MacOS13 SDK Apple-specific deprecations [PR107568].
The SDK for MacOS13 includes Apple-specific deprecations of some functions that are not deprecated in Posix, C or C++ and widely used in GCC. The fix makes the deprecation conditional on __APPLE_LOCAL_DEPRECATIONS so that end users may still observe them but they are hidden from normal compilations. Signed-off-by: Iain Sandoe <iain@sandoe.co.uk> PR target/107568 fixincludes/ChangeLog: * fixincl.x: Regenerate. * inclhack.def: Add a fix for MacOS13 SDK function deprecations in stdio.h. * tests/base/stdio.h (__deprecated_msg): New test.
This commit is contained in:
@@ -2,11 +2,11 @@
|
||||
*
|
||||
* DO NOT EDIT THIS FILE (fixincl.x)
|
||||
*
|
||||
* It has been AutoGen-ed September 29, 2022 at 10:22:55 PM by AutoGen 5.18.16
|
||||
* It has been AutoGen-ed January 18, 2023 at 07:54:50 PM by AutoGen 5.18.7
|
||||
* From the definitions inclhack.def
|
||||
* and the template file fixincl
|
||||
*/
|
||||
/* DO NOT SVN-MERGE THIS FILE, EITHER Thu Sep 29 22:22:55 CEST 2022
|
||||
/* DO NOT SVN-MERGE THIS FILE, EITHER Wed Jan 18 19:54:50 GMT 2023
|
||||
*
|
||||
* You must regenerate it. Use the ./genfixes script.
|
||||
*
|
||||
@@ -15,7 +15,7 @@
|
||||
* certain ANSI-incompatible system header files which are fixed to work
|
||||
* correctly with ANSI C and placed in a directory that GNU C will search.
|
||||
*
|
||||
* This file contains 272 fixup descriptions.
|
||||
* This file contains 273 fixup descriptions.
|
||||
*
|
||||
* See README for more information.
|
||||
*
|
||||
@@ -2608,6 +2608,46 @@ static const char* apzBsd_Stdio_Attrs_ConflictPatch[] = {
|
||||
int vfscanf(FILE *, const char *, __builtin_va_list) __asm__ (_BSD_STRING(__USER_LABEL_PREFIX__) \"__svfscanf\");",
|
||||
(char*)NULL };
|
||||
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Description of Apple_Local_Stdio_Fn_Deprecation fix
|
||||
*/
|
||||
tSCC zApple_Local_Stdio_Fn_DeprecationName[] =
|
||||
"apple_local_stdio_fn_deprecation";
|
||||
|
||||
/*
|
||||
* File name selection pattern
|
||||
*/
|
||||
tSCC zApple_Local_Stdio_Fn_DeprecationList[] =
|
||||
"stdio.h\0";
|
||||
/*
|
||||
* Machine/OS name selection pattern
|
||||
*/
|
||||
tSCC* apzApple_Local_Stdio_Fn_DeprecationMachs[] = {
|
||||
"*-*-*darwin2*",
|
||||
(const char*)NULL };
|
||||
|
||||
/*
|
||||
* content selection pattern - do fix if pattern found
|
||||
*/
|
||||
tSCC zApple_Local_Stdio_Fn_DeprecationSelect0[] =
|
||||
"__deprecated_msg([^\n\
|
||||
]*)$";
|
||||
|
||||
#define APPLE_LOCAL_STDIO_FN_DEPRECATION_TEST_CT 1
|
||||
static tTestDesc aApple_Local_Stdio_Fn_DeprecationTests[] = {
|
||||
{ TT_EGREP, zApple_Local_Stdio_Fn_DeprecationSelect0, (regex_t*)NULL }, };
|
||||
|
||||
/*
|
||||
* Fix Command Arguments for Apple_Local_Stdio_Fn_Deprecation
|
||||
*/
|
||||
static const char* apzApple_Local_Stdio_Fn_DeprecationPatch[] = {
|
||||
"format",
|
||||
"#if defined(__APPLE_LOCAL_DEPRECATIONS)\n\
|
||||
%0\n\
|
||||
#endif",
|
||||
(char*)NULL };
|
||||
|
||||
/* * * * * * * * * * * * * * * * * * * * * * * * * *
|
||||
*
|
||||
* Description of Ctrl_Quotes_Def fix
|
||||
@@ -11075,9 +11115,9 @@ static const char* apzX11_SprintfPatch[] = {
|
||||
*
|
||||
* List of all fixes
|
||||
*/
|
||||
#define REGEX_COUNT 310
|
||||
#define REGEX_COUNT 311
|
||||
#define MACH_LIST_SIZE_LIMIT 187
|
||||
#define FIX_COUNT 272
|
||||
#define FIX_COUNT 273
|
||||
|
||||
/*
|
||||
* Enumerate the fixes
|
||||
@@ -11144,6 +11184,7 @@ typedef enum {
|
||||
BROKEN_CABS_FIXIDX,
|
||||
BROKEN_NAN_FIXIDX,
|
||||
BSD_STDIO_ATTRS_CONFLICT_FIXIDX,
|
||||
APPLE_LOCAL_STDIO_FN_DEPRECATION_FIXIDX,
|
||||
CTRL_QUOTES_DEF_FIXIDX,
|
||||
CTRL_QUOTES_USE_FIXIDX,
|
||||
CXX_UNREADY_FIXIDX,
|
||||
@@ -11663,6 +11704,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = {
|
||||
BSD_STDIO_ATTRS_CONFLICT_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
|
||||
aBsd_Stdio_Attrs_ConflictTests, apzBsd_Stdio_Attrs_ConflictPatch, 0 },
|
||||
|
||||
{ zApple_Local_Stdio_Fn_DeprecationName, zApple_Local_Stdio_Fn_DeprecationList,
|
||||
apzApple_Local_Stdio_Fn_DeprecationMachs,
|
||||
APPLE_LOCAL_STDIO_FN_DEPRECATION_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
|
||||
aApple_Local_Stdio_Fn_DeprecationTests, apzApple_Local_Stdio_Fn_DeprecationPatch, 0 },
|
||||
|
||||
{ zCtrl_Quotes_DefName, zCtrl_Quotes_DefList,
|
||||
apzCtrl_Quotes_DefMachs,
|
||||
CTRL_QUOTES_DEF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE,
|
||||
|
||||
@@ -1269,6 +1269,18 @@ fix = {
|
||||
test_text = '#define vfscanf __svfscanf';
|
||||
};
|
||||
|
||||
fix = {
|
||||
hackname = apple_local_stdio_fn_deprecation;
|
||||
mach = "*-*-*darwin2*";
|
||||
files = stdio.h;
|
||||
select = "__deprecated_msg([^\n]*)$";
|
||||
c_fix = format;
|
||||
c_fix_arg = "#if defined(__APPLE_LOCAL_DEPRECATIONS)\n"
|
||||
"%0\n"
|
||||
"#endif";
|
||||
test_text = '__deprecated_msg("This function is provided for compat...")';
|
||||
};
|
||||
|
||||
/*
|
||||
* Fix various macros used to define ioctl numbers.
|
||||
* The traditional syntax was:
|
||||
|
||||
@@ -41,6 +41,13 @@ int vfscanf(FILE *, const char *, __builtin_va_list) __asm__ (_BSD_STRING(__USER
|
||||
#endif /* BSD_STDIO_ATTRS_CONFLICT_CHECK */
|
||||
|
||||
|
||||
#if defined( APPLE_LOCAL_STDIO_FN_DEPRECATION_CHECK )
|
||||
#if defined(__APPLE_LOCAL_DEPRECATIONS)
|
||||
__deprecated_msg("This function is provided for compat...")
|
||||
#endif
|
||||
#endif /* APPLE_LOCAL_STDIO_FN_DEPRECATION_CHECK */
|
||||
|
||||
|
||||
#if defined( HPUX10_STDIO_DECLARATIONS_CHECK )
|
||||
# define _iob __iob
|
||||
|
||||
|
||||
Reference in New Issue
Block a user