aboutsummaryrefslogtreecommitdiff
path: root/gcc/fixinc/inclhack.def
diff options
context:
space:
mode:
authorLoren J. Rittle <ljrittle@acm.org>2003-04-04 21:46:49 +0000
committerLoren J. Rittle <ljrittle@gcc.gnu.org>2003-04-04 21:46:49 +0000
commit0705a2a26a8f761c0fa319adfae46e3cd0ade7be (patch)
tree248bc4d65ab182cad68722348bd60ce97b9850ab /gcc/fixinc/inclhack.def
parent1a4828810083a7e45cf8b53daa579052265e1e61 (diff)
downloadgcc-0705a2a26a8f761c0fa319adfae46e3cd0ade7be.zip
gcc-0705a2a26a8f761c0fa319adfae46e3cd0ade7be.tar.gz
gcc-0705a2a26a8f761c0fa319adfae46e3cd0ade7be.tar.bz2
inclhack.def (bsd_stdio_attrs_conflict): New.
* fixinc/inclhack.def (bsd_stdio_attrs_conflict): New. * fixinc/fixincl.x: Rebuilt. * fixinc/tests/base/stdio.h: Regenerated. From-SVN: r65248
Diffstat (limited to 'gcc/fixinc/inclhack.def')
-rw-r--r--gcc/fixinc/inclhack.def20
1 files changed, 20 insertions, 0 deletions
diff --git a/gcc/fixinc/inclhack.def b/gcc/fixinc/inclhack.def
index 763df48..5256412 100644
--- a/gcc/fixinc/inclhack.def
+++ b/gcc/fixinc/inclhack.def
@@ -724,6 +724,26 @@ fix = {
/*
+ * Various systems derived from BSD4.4 contain a macro definition
+ * for vfscanf that interacts badly with requirements of builtin-attrs.def.
+ * Known to be fixed in FreeBSD 5 system headers.
+ */
+fix = {
+ hackname = bsd_stdio_attrs_conflict;
+ mach = *-*-*bsd*;
+ mach = *-*-*darwin*;
+ files = stdio.h;
+ select = "^#define[ \t]*vfscanf[ \t]*__svfscanf[ \t]*$";
+ c_fix = format;
+ c_fix_arg = '#define _BSD_STRING(_BSD_X) _BSD_STRINGX(_BSD_X)' "\n"
+ '#define _BSD_STRINGX(_BSD_X) #_BSD_X' "\n"
+ 'int vfscanf(FILE *, const char *, __builtin_va_list) '
+ '__asm__ (_BSD_STRING(__USER_LABEL_PREFIX__) "__svfscanf");';
+ test_text = '#define vfscanf __svfscanf';
+};
+
+
+/*
* check for broken assert.h that needs stdio.h
*/
fix = {