summaryrefslogtreecommitdiff
path: root/include/string.h
diff options
context:
space:
mode:
authorjvoisin2023-09-20 18:05:27 +0200
committerjvoisin2023-09-20 18:43:56 +0200
commitfd4332dbcd5227fde96e7bc128418d834b5b910f (patch)
tree4b2fce2510a5a2ee189147b76ef937a1c568a090 /include/string.h
parentd2594298b89d0fb8989cae3ebc8900e77b6aa478 (diff)
Add tests for compile-time errors
Diffstat (limited to 'include/string.h')
-rw-r--r--include/string.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/include/string.h b/include/string.h
index be13cb4..010b7f2 100644
--- a/include/string.h
+++ b/include/string.h
@@ -43,6 +43,7 @@ __access(read_only, 2, 3)
43__diagnose_as_builtin(__builtin_memcpy, 1, 2, 3) 43__diagnose_as_builtin(__builtin_memcpy, 1, 2, 3)
44_FORTIFY_FN(memcpy) void *memcpy(void * _FORTIFY_POS0 __od, 44_FORTIFY_FN(memcpy) void *memcpy(void * _FORTIFY_POS0 __od,
45 const void * _FORTIFY_POS0 __os, size_t __n) 45 const void * _FORTIFY_POS0 __os, size_t __n)
46__error_if((__bos(__od, 0) < __n), "'memcpy' called with `n` bigger than the size of `d`.")
46{ 47{
47 size_t __bd = __bos(__od, 0); 48 size_t __bd = __bos(__od, 0);
48 size_t __bs = __bos(__os, 0); 49 size_t __bs = __bos(__os, 0);
@@ -72,8 +73,8 @@ _FORTIFY_FN(memmove) void *memmove(void * _FORTIFY_POS0 __d,
72 73
73__access(write_only, 1, 3) 74__access(write_only, 1, 3)
74__diagnose_as_builtin(__builtin_memset, 1, 2, 3) 75__diagnose_as_builtin(__builtin_memset, 1, 2, 3)
75__warning_if(__c != 0 && __n == 0, "'memset' will set `0` bytes; did you invert the arguments?")
76_FORTIFY_FN(memset) void *memset(void * _FORTIFY_POS0 __d, int __c, size_t __n) 76_FORTIFY_FN(memset) void *memset(void * _FORTIFY_POS0 __d, int __c, size_t __n)
77__warning_if(__c != 0 && __n == 0, "'memset' will set `0` bytes; did you invert the arguments?")
77{ 78{
78 size_t __b = __bos(__d, 0); 79 size_t __b = __bos(__d, 0);
79 80