Hello. Looks there's real issues spotted by -Wchkp:
../../gcc/c-family/c-ada-spec.c: In function ‘void print_ada_macros.chkp(pretty_printer*, \xe2\x80\x98pointer_bounds_typ\xe2\x80\x99 not supported by dump_type#<type error>, cpp_hashnode**, \xe2\x80\x98pointer_bounds_typ\xe2\x80\x99 not supported by dump_type#<type error>, int, void, ...)’: ../../gcc/c-family/c-ada-spec.c:80:15: error: memory access check always fail [-Werror=chkp] *param_len += NODE_LEN (param); ~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~ ../../gcc/c-family/c-ada-spec.c:80:15: error: memory access check always fail [-Werror=chkp] ../../gcc/c-family/c-ada-spec.c:84:19: error: memory access check always fail [-Werror=chkp] *param_len += 2; /* ", " */ ~~~~~~~~~~~^~~~ ../../gcc/c-family/c-ada-spec.c:84:19: error: memory access check always fail [-Werror=chkp] ../../gcc/c-family/c-ada-spec.c:92:18: error: memory access check always fail [-Werror=chkp] *param_len += 2; /* ")\0" */ ~~~~~~~~~~~^~~~ ../../gcc/c-family/c-ada-spec.c:92:18: error: memory access check always fail [-Werror=chkp] I prepared quite obvious fix for that and tested make check -k RUNTESTFLAGS="dg.exp=dump-ada-spec-*" on x86_64-linux-gnu. Ready to be installed? Martin
>From 9137ddcf413585f557c4ef263d731bf457cb79f4 Mon Sep 17 00:00:00 2001 From: marxin <mli...@suse.cz> Date: Tue, 7 Mar 2017 11:10:30 +0100 Subject: [PATCH] Increment value instead of a pointer in ADA macro processing. gcc/c-family/ChangeLog: 2017-03-07 Martin Liska <mli...@suse.cz> * c-ada-spec.c (macro_length): Increment value instead of a pointer. --- gcc/c-family/c-ada-spec.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gcc/c-family/c-ada-spec.c b/gcc/c-family/c-ada-spec.c index 6db741107a3..18c5ccf1054 100644 --- a/gcc/c-family/c-ada-spec.c +++ b/gcc/c-family/c-ada-spec.c @@ -72,7 +72,7 @@ macro_length (const cpp_macro *macro, int *supported, int *buffer_len, if (macro->fun_like) { - param_len++; + (*param_len)++; for (i = 0; i < macro->paramc; i++) { cpp_hashnode *param = macro->params[i]; -- 2.11.1