@@ -718,48 +718,47 @@ LIBBUILTIN(vscanf, "icC*Ra", "fS:0:", "stdio.h", ALL_LANGUAGES)
718
718
LIBBUILTIN(vfscanf, " iP*RcC*Ra" , " fS:1:" , " stdio.h" , ALL_LANGUAGES)
719
719
LIBBUILTIN(vsscanf, " icC*RcC*Ra" , " fS:1:" , " stdio.h" , ALL_LANGUAGES)
720
720
// C99
721
+ #undef setjmp
722
+ LIBBUILTIN (setjmp, " iJ" , " fj" , " setjmp.h" , ALL_LANGUAGES)
721
723
LIBBUILTIN(longjmp, " vJi" , " fr" , " setjmp.h" , ALL_LANGUAGES)
722
724
723
- // Non-C library functions
724
- // FIXME: Non-C-standard stuff shouldn't be builtins in non-GNU mode!
725
- LIBBUILTIN(alloca, " v*z" , " f" , " stdlib.h" , ALL_LANGUAGES)
725
+ // Non-C library functions, active in GNU mode only.
726
+ LIBBUILTIN(alloca, " v*z" , " f" , " stdlib.h" , ALL_GNU_LANGUAGES)
726
727
// POSIX string.h
727
- LIBBUILTIN(stpcpy, " c*c*cC*" , " f" , " string.h" , ALL_LANGUAGES )
728
- LIBBUILTIN(stpncpy, " c*c*cC*z" , " f" , " string.h" , ALL_LANGUAGES )
729
- LIBBUILTIN(strdup, " c*cC*" , " f" , " string.h" , ALL_LANGUAGES )
730
- LIBBUILTIN(strndup, " c*cC*z" , " f" , " string.h" , ALL_LANGUAGES )
728
+ LIBBUILTIN(stpcpy, " c*c*cC*" , " f" , " string.h" , ALL_GNU_LANGUAGES )
729
+ LIBBUILTIN(stpncpy, " c*c*cC*z" , " f" , " string.h" , ALL_GNU_LANGUAGES )
730
+ LIBBUILTIN(strdup, " c*cC*" , " f" , " string.h" , ALL_GNU_LANGUAGES )
731
+ LIBBUILTIN(strndup, " c*cC*z" , " f" , " string.h" , ALL_GNU_LANGUAGES )
731
732
// POSIX strings.h
732
- LIBBUILTIN(index, " c*cC*i" , " f" , " strings.h" , ALL_LANGUAGES )
733
- LIBBUILTIN(rindex, " c*cC*i" , " f" , " strings.h" , ALL_LANGUAGES )
734
- LIBBUILTIN(bzero, " vv*z" , " f" , " strings.h" , ALL_LANGUAGES )
733
+ LIBBUILTIN(index, " c*cC*i" , " f" , " strings.h" , ALL_GNU_LANGUAGES )
734
+ LIBBUILTIN(rindex, " c*cC*i" , " f" , " strings.h" , ALL_GNU_LANGUAGES )
735
+ LIBBUILTIN(bzero, " vv*z" , " f" , " strings.h" , ALL_GNU_LANGUAGES )
735
736
// In some systems str[n]casejmp is a macro that expands to _str[n]icmp.
736
737
// We undefine then here to avoid wrong name.
737
738
#undef strcasecmp
738
739
#undef strncasecmp
739
- LIBBUILTIN (strcasecmp, " icC*cC*" , " f" , " strings.h" , ALL_LANGUAGES )
740
- LIBBUILTIN(strncasecmp, " icC*cC*z" , " f" , " strings.h" , ALL_LANGUAGES )
740
+ LIBBUILTIN (strcasecmp, " icC*cC*" , " f" , " strings.h" , ALL_GNU_LANGUAGES )
741
+ LIBBUILTIN(strncasecmp, " icC*cC*z" , " f" , " strings.h" , ALL_GNU_LANGUAGES )
741
742
// POSIX unistd.h
742
- LIBBUILTIN(_exit, " vi" , " fr" , " unistd.h" , ALL_LANGUAGES )
743
- LIBBUILTIN(vfork, " p" , " fj" , " unistd.h" , ALL_LANGUAGES )
743
+ LIBBUILTIN(_exit, " vi" , " fr" , " unistd.h" , ALL_GNU_LANGUAGES )
744
+ LIBBUILTIN(vfork, " p" , " fj" , " unistd.h" , ALL_GNU_LANGUAGES )
744
745
// POSIX setjmp.h
745
746
746
747
// In some systems setjmp is a macro that expands to _setjmp. We undefine
747
748
// it here to avoid having two identical LIBBUILTIN entries.
748
- #undef setjmp
749
- LIBBUILTIN (_setjmp, " iJ" , " fj" , " setjmp.h" , ALL_LANGUAGES)
750
- LIBBUILTIN(__sigsetjmp, " iSJi" , " fj" , " setjmp.h" , ALL_LANGUAGES)
751
- LIBBUILTIN(setjmp, " iJ" , " fj" , " setjmp.h" , ALL_LANGUAGES)
752
- LIBBUILTIN(sigsetjmp, " iSJi" , " fj" , " setjmp.h" , ALL_LANGUAGES)
753
- LIBBUILTIN(setjmp_syscall, " iJ" , " fj" , " setjmp.h" , ALL_LANGUAGES)
754
- LIBBUILTIN(savectx, " iJ" , " fj" , " setjmp.h" , ALL_LANGUAGES)
755
- LIBBUILTIN(qsetjmp, " iJ" , " fj" , " setjmp.h" , ALL_LANGUAGES)
756
- LIBBUILTIN(getcontext, " iK*" , " fj" , " setjmp.h" , ALL_LANGUAGES)
757
-
758
- LIBBUILTIN(_longjmp, " vJi" , " fr" , " setjmp.h" , ALL_LANGUAGES)
759
- LIBBUILTIN(siglongjmp, " vSJi" , " fr" , " setjmp.h" , ALL_LANGUAGES)
749
+ LIBBUILTIN(_setjmp, " iJ" , " fj" , " setjmp.h" , ALL_GNU_LANGUAGES)
750
+ LIBBUILTIN(__sigsetjmp, " iSJi" , " fj" , " setjmp.h" , ALL_GNU_LANGUAGES)
751
+ LIBBUILTIN(sigsetjmp, " iSJi" , " fj" , " setjmp.h" , ALL_GNU_LANGUAGES)
752
+ LIBBUILTIN(setjmp_syscall, " iJ" , " fj" , " setjmp.h" , ALL_GNU_LANGUAGES)
753
+ LIBBUILTIN(savectx, " iJ" , " fj" , " setjmp.h" , ALL_GNU_LANGUAGES)
754
+ LIBBUILTIN(qsetjmp, " iJ" , " fj" , " setjmp.h" , ALL_GNU_LANGUAGES)
755
+ LIBBUILTIN(getcontext, " iK*" , " fj" , " setjmp.h" , ALL_GNU_LANGUAGES)
756
+
757
+ LIBBUILTIN(_longjmp, " vJi" , " fr" , " setjmp.h" , ALL_GNU_LANGUAGES)
758
+ LIBBUILTIN(siglongjmp, " vSJi" , " fr" , " setjmp.h" , ALL_GNU_LANGUAGES)
760
759
// non-standard but very common
761
- LIBBUILTIN(strlcpy, " zc*cC*z" , " f" , " string.h" , ALL_LANGUAGES )
762
- LIBBUILTIN(strlcat, " zc*cC*z" , " f" , " string.h" , ALL_LANGUAGES )
760
+ LIBBUILTIN(strlcpy, " zc*cC*z" , " f" , " string.h" , ALL_GNU_LANGUAGES )
761
+ LIBBUILTIN(strlcat, " zc*cC*z" , " f" , " string.h" , ALL_GNU_LANGUAGES )
763
762
// id objc_msgSend(id, SEL, ...)
764
763
LIBBUILTIN(objc_msgSend, " GGH." , " f" , " objc/message.h" , OBJC_LANG)
765
764
// long double objc_msgSend_fpret(id self, SEL op, ...)
0 commit comments