elfutils uses nested functions a lot. This is fine unless one takes the address of such a nested function. When taking the address of a nested function a trampoline is generated that on some systems require the stack to be executable. That is bad. We never want to generate such trampolines. Add -Wtrampolines to CLAGS to make sure we don't.
Signed-off-by: Mark Wielaard <m...@klomp.org> --- config/ChangeLog | 4 ++++ config/eu.am | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/config/ChangeLog b/config/ChangeLog index f281eb2..40d6f85 100644 --- a/config/ChangeLog +++ b/config/ChangeLog @@ -1,3 +1,7 @@ +2018-11-19 Mark Wielaard <m...@klomp.org> + + * eu.am (AM_CFLAGS): Add -Wtrampolines. + 2018-07-04 Mark Wielaard <m...@klomp.org> * upload-release.sh: New file. diff --git a/config/eu.am b/config/eu.am index c2cc349..82acda3 100644 --- a/config/eu.am +++ b/config/eu.am @@ -70,7 +70,7 @@ IMPLICIT_FALLTHROUGH_WARNING= endif AM_CFLAGS = -std=gnu99 -Wall -Wshadow -Wformat=2 \ - -Wold-style-definition -Wstrict-prototypes \ + -Wold-style-definition -Wstrict-prototypes -Wtrampolines \ $(LOGICAL_OP_WARNING) $(DUPLICATED_COND_WARNING) \ $(NULL_DEREFERENCE_WARNING) $(IMPLICIT_FALLTHROUGH_WARNING) \ $(if $($(*F)_no_Werror),,-Werror) \ -- 1.8.3.1