On Wed, Jan 23, 2019 at 10:48 AM Eric Botcazou wrote:
>
> Hi,
>
> this is a regression present in Ada on the mainline since we switched to using
> the internal support for thunks: expand_thunk segfaults during inlining when
> trying to access the DECL_RESULT of the special alias built to make the
Hi,
this is a regression present in Ada on the mainline since we switched to using
the internal support for thunks: expand_thunk segfaults during inlining when
trying to access the DECL_RESULT of the special alias built to make the call
from the thunk local, if the DECL_RESULT of the thunk is
I've looked at the C++ testcase
int foo (int x)
{
try {
return x;
}
catch (...)
{
return 0;
}
}
which exhibits exactly the behavior you quote - return x is considered
throwing an exception. The C++ FE doesn't arrange for TREE_THIS_NOTRAP to
be set here (maybe
On Tue, Sep 17, 2013 at 9:03 AM, Eric Botcazou ebotca...@adacore.com wrote:
I've looked at the C++ testcase
int foo (int x)
{
try {
return x;
}
catch (...)
{
return 0;
}
}
which exhibits exactly the behavior you quote - return x is considered
throwing an exception.
Yeah, I thought testing for a PARM_DECL should be sufficient? For
nested functions references to outer parms should have been lowered via the
static chain at the point tree-inline.c sees them.
OK for the latter point, but are you sure for the former? My understanding is
that we're already
On Fri, Sep 13, 2013 at 04:29:48PM +0200, Eric Botcazou wrote:
@@ -4748,6 +4774,8 @@ copy_gimple_seq_and_replace_locals (gimp
id.transform_call_graph_edges = CB_CGE_DUPLICATE;
id.transform_new_cfg = false;
id.transform_return_to_modify = false;
+ id.transform_parameter = false;
+
On Tue, Sep 17, 2013 at 10:42 AM, Eric Botcazou ebotca...@adacore.com wrote:
Yeah, I thought testing for a PARM_DECL should be sufficient? For
nested functions references to outer parms should have been lowered via the
static chain at the point tree-inline.c sees them.
OK for the latter
That's true... so you can only simplify is_parameter_of by dropping
the context check.
OK, thanks, installed with this modification and the fix for the oversight
spotted by Jakub, after retesting on x86-64/Linux.
--
Eric Botcazou
On Fri, Sep 13, 2013 at 4:29 PM, Eric Botcazou ebotca...@adacore.com wrote:
Hi,
in Ada parameters can be passed by reference: in this case, the address of the
argument is directly passed to the callee, which dereferences it to access the
argument; now Ada also enables -fexceptions
On 09/16/2013 05:28 AM, Richard Biener wrote:
which exhibits exactly the behavior you quote - return x is considered throwing
an exception. The C++ FE doesn't arrange for TREE_THIS_NOTRAP to be
set here (maybe due to this issue you quote?).
I haven't been aware of TREE_THIS_NOTRAP, but we
Hi,
in Ada parameters can be passed by reference: in this case, the address of the
argument is directly passed to the callee, which dereferences it to access the
argument; now Ada also enables -fexceptions -fnon-call-exceptions, which means
that any pointer dereference is seen as the potential
11 matches
Mail list logo