diff options
Diffstat (limited to 'main/fortify-headers/0001-Fix-usage-of-__USER_LABEL_PREFIX__.patch')
-rw-r--r-- | main/fortify-headers/0001-Fix-usage-of-__USER_LABEL_PREFIX__.patch | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/main/fortify-headers/0001-Fix-usage-of-__USER_LABEL_PREFIX__.patch b/main/fortify-headers/0001-Fix-usage-of-__USER_LABEL_PREFIX__.patch new file mode 100644 index 000000000..1c9eed5b2 --- /dev/null +++ b/main/fortify-headers/0001-Fix-usage-of-__USER_LABEL_PREFIX__.patch @@ -0,0 +1,29 @@ +From a9ee1d2743acb0b2903db87c0a241c0a569cfc4e Mon Sep 17 00:00:00 2001 +From: Trutz Behn <me@trutz.be> +Date: Tue, 2 Jun 2015 21:33:39 +0200 +Subject: [PATCH 1/3] Fix usage of __USER_LABEL_PREFIX__ + +The predefined __USER_LABEL_PREFIX__ macro if it is non-empty contains +an identifier, not a string literal, thus it needs to be stringified. +--- + include/fortify-headers.h | 4 +++- + 1 file changed, 3 insertions(+), 1 deletion(-) + +diff --git a/include/fortify-headers.h b/include/fortify-headers.h +index 72b99ec..fcb862d 100644 +--- a/include/fortify-headers.h ++++ b/include/fortify-headers.h +@@ -16,7 +16,9 @@ + #ifndef _FORTIFY_HEADERS_H + #define _FORTIFY_HEADERS_H + +-#define fortify_fn(fn) __typeof__(fn) __orig_##fn __asm__(__USER_LABEL_PREFIX__ #fn); \ ++#define _FORTIFY_STR(s) #s ++#define _FORTIFY_ORIG(p,fn) __typeof__(fn) __orig_##fn __asm__(_FORTIFY_STR(p) #fn) ++#define fortify_fn(fn) _FORTIFY_ORIG(__USER_LABEL_PREFIX__,fn); \ + extern __inline __attribute__((__always_inline__,__gnu_inline__,__artificial__)) + + #endif +-- +2.4.2 + |