Hi,
this patch from Jan:
https://gcc.gnu.org/ml/gcc-patches/2015-03/msg01388.html
totally disabled cross-language inlining into Ada without notice, by adding a
check that always fails when the language of the callee is not Ada...
The attached patch simply deletes this new check to restore the initial state.
Tested on x86_64-suse-linux, OK for the mainline?
2016-01-20 Eric Botcazou <ebotca...@adacore.com>
* ipa-inline.c (can_inline_edge_p): Back out overzealous check on
flag_non_call_exceptions compatibility.
--
Eric Botcazou
Index: ipa-inline.c
===================================================================
--- ipa-inline.c (revision 232465)
+++ ipa-inline.c (working copy)
@@ -432,11 +432,7 @@ can_inline_edge_p (struct cgraph_edge *e
does not throw.
This is tracked by DECL_FUNCTION_PERSONALITY. */
|| (check_match (flag_non_call_exceptions)
- /* TODO: We also may allow bringing !flag_non_call_exceptions
- to flag_non_call_exceptions function, but that may need
- extra work in tree-inline to add the extra EH edges. */
- && (!opt_for_fn (callee->decl, flag_non_call_exceptions)
- || DECL_FUNCTION_PERSONALITY (callee->decl)))
+ && DECL_FUNCTION_PERSONALITY (callee->decl))
|| (check_maybe_up (flag_exceptions)
&& DECL_FUNCTION_PERSONALITY (callee->decl))
/* Strictly speaking only when the callee contains function