diff options
author | John David Anglin <danglin@gcc.gnu.org> | 2016-02-01 00:54:22 +0000 |
---|---|---|
committer | John David Anglin <danglin@gcc.gnu.org> | 2016-02-01 00:54:22 +0000 |
commit | f67cb8fe7b6a6ddc791794d18f63802e798ce808 (patch) | |
tree | ee5a72c0493dd0bcfc713d80e5d133e5bc5a4cdd /fixincludes | |
parent | 61083a4ba7bab1e24926a0591e85f7d988992392 (diff) | |
download | gcc-f67cb8fe7b6a6ddc791794d18f63802e798ce808.zip gcc-f67cb8fe7b6a6ddc791794d18f63802e798ce808.tar.gz gcc-f67cb8fe7b6a6ddc791794d18f63802e798ce808.tar.bz2 |
re PR target/68741 (FAIL: tr1/8_c_compatibility/cstdio/functions.cc (test for excess errors))
PR target/68741
* inclhack.def (hpux_vsscanf): New fix.
* fixincl.x: Regenerated.
* tests/base/stdio.h [HPUX_VSSCANF_CHECK]: New test.
From-SVN: r233029
Diffstat (limited to 'fixincludes')
-rw-r--r-- | fixincludes/ChangeLog | 7 | ||||
-rw-r--r-- | fixincludes/fixincl.x | 63 | ||||
-rw-r--r-- | fixincludes/inclhack.def | 14 | ||||
-rw-r--r-- | fixincludes/tests/base/stdio.h | 5 |
4 files changed, 79 insertions, 10 deletions
diff --git a/fixincludes/ChangeLog b/fixincludes/ChangeLog index 26f697a..da21dbc 100644 --- a/fixincludes/ChangeLog +++ b/fixincludes/ChangeLog @@ -1,3 +1,10 @@ +2016-01-31 John David Anglin <danglin@gcc.gnu.org> + + PR target/68741 + * inclhack.def (hpux_vsscanf): New fix. + * fixincl.x: Regenerated. + * tests/base/stdio.h [HPUX_VSSCANF_CHECK]: New test. + 2015-08-14 David Edelsohn <dje.gcc@gmail.com> * inclhack.def (aix_stdio_inline): New fix. diff --git a/fixincludes/fixincl.x b/fixincludes/fixincl.x index 79af6d1..3833811 100644 --- a/fixincludes/fixincl.x +++ b/fixincludes/fixincl.x @@ -1,12 +1,12 @@ /* -*- buffer-read-only: t -*- vi: set ro: - * - *DO NOT EDIT THIS FILE (fixincl.x) - * - *It has been AutoGen-ed August 13, 2015 at 05:25:50 PM by AutoGen 5.18.3 - *From the definitions inclhack.def - *and the template file fixincl + * + * DO NOT EDIT THIS FILE (fixincl.x) + * + * It has been AutoGen-ed Sunday January 31, 2016 at 07:52:05 PM EST + * From the definitions inclhack.def + * and the template file fixincl */ -/* DO NOT SVN-MERGE THIS FILE, EITHER Thu Aug 13 17:25:50 UTC 2015 +/* DO NOT SVN-MERGE THIS FILE, EITHER Sun 31 Jan 2016 19:52:05 EST * * 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 230 fixup descriptions. + * This file contains 231 fixup descriptions. * * See README for more information. * @@ -4326,6 +4326,43 @@ static const char* apzHpux11_VsnprintfPatch[] = { /* * * * * * * * * * * * * * * * * * * * * * * * * * * + * Description of Hpux_Vsscanf fix + */ +tSCC zHpux_VsscanfName[] = + "hpux_vsscanf"; + +/* + * File name selection pattern + */ +tSCC zHpux_VsscanfList[] = + "stdio.h\0"; +/* + * Machine/OS name selection pattern + */ +tSCC* apzHpux_VsscanfMachs[] = { + "*-*-hpux*", + (const char*)NULL }; + +/* + * content selection pattern - do fix if pattern found + */ +tSCC zHpux_VsscanfSelect0[] = + "(extern int vsscanf\\()char"; + +#define HPUX_VSSCANF_TEST_CT 1 +static tTestDesc aHpux_VsscanfTests[] = { + { TT_EGREP, zHpux_VsscanfSelect0, (regex_t*)NULL }, }; + +/* + * Fix Command Arguments for Hpux_Vsscanf + */ +static const char* apzHpux_VsscanfPatch[] = { + "format", + "%1const char", + (char*)NULL }; + +/* * * * * * * * * * * * * * * * * * * * * * * * * * + * * Description of Hpux8_Bogus_Inlines fix */ tSCC zHpux8_Bogus_InlinesName[] = @@ -9448,9 +9485,9 @@ static const char* apzX11_SprintfPatch[] = { * * List of all fixes */ -#define REGEX_COUNT 267 +#define REGEX_COUNT 268 #define MACH_LIST_SIZE_LIMIT 187 -#define FIX_COUNT 230 +#define FIX_COUNT 231 /* * Enumerate the fixes @@ -9556,6 +9593,7 @@ typedef enum { HPUX11_SIZE_T_FIXIDX, HPUX11_SNPRINTF_FIXIDX, HPUX11_VSNPRINTF_FIXIDX, + HPUX_VSSCANF_FIXIDX, HPUX8_BOGUS_INLINES_FIXIDX, HPUX_C99_INTPTR_FIXIDX, HPUX_C99_INTTYPES_FIXIDX, @@ -10189,6 +10227,11 @@ tFixDesc fixDescList[ FIX_COUNT ] = { HPUX11_VSNPRINTF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, aHpux11_VsnprintfTests, apzHpux11_VsnprintfPatch, 0 }, + { zHpux_VsscanfName, zHpux_VsscanfList, + apzHpux_VsscanfMachs, + HPUX_VSSCANF_TEST_CT, FD_MACH_ONLY | FD_SUBROUTINE, + aHpux_VsscanfTests, apzHpux_VsscanfPatch, 0 }, + { zHpux8_Bogus_InlinesName, zHpux8_Bogus_InlinesList, apzHpux8_Bogus_InlinesMachs, HPUX8_BOGUS_INLINES_TEST_CT, FD_MACH_ONLY, diff --git a/fixincludes/inclhack.def b/fixincludes/inclhack.def index fc72add..8b6d1fe 100644 --- a/fixincludes/inclhack.def +++ b/fixincludes/inclhack.def @@ -2273,6 +2273,20 @@ fix = { }; /* + * Fix missing const in hpux vsscanf declaration + */ +fix = { + hackname = hpux_vsscanf; + mach = "*-*-hpux*"; + files = stdio.h; + select = '(extern int vsscanf\()char'; + c_fix = format; + c_fix_arg = "%1const char"; + + test_text = 'extern int vsscanf(char *, const char *, __va_list);'; +}; + +/* * get rid of bogus inline definitions in HP-UX 8.0 */ fix = { diff --git a/fixincludes/tests/base/stdio.h b/fixincludes/tests/base/stdio.h index 275931c5..4ca4faf 100644 --- a/fixincludes/tests/base/stdio.h +++ b/fixincludes/tests/base/stdio.h @@ -59,6 +59,11 @@ extern int vsnprintf(char *, _hpux_size_t, const char *, __gnuc_va_list); #endif /* HPUX11_VSNPRINTF_CHECK */ +#if defined( HPUX_VSSCANF_CHECK ) +extern int vsscanf(const char *, const char *, __gnuc_va_list); +#endif /* HPUX_VSSCANF_CHECK */ + + #if defined( IRIX_STDIO_DUMMY_VA_LIST_CHECK ) extern int printf( const char *, __gnuc_va_list ); #endif /* IRIX_STDIO_DUMMY_VA_LIST_CHECK */ |