diff options
Diffstat (limited to 'gcc/function.c')
-rw-r--r-- | gcc/function.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gcc/function.c b/gcc/function.c index 2ed1748..29fe1b0 100644 --- a/gcc/function.c +++ b/gcc/function.c @@ -1766,7 +1766,9 @@ aggregate_value_p (const_tree exp, const_tree fntype) { case CALL_EXPR: fndecl = get_callee_fndecl (fntype); - fntype = fndecl ? TREE_TYPE (fndecl) : 0; + fntype = (fndecl + ? TREE_TYPE (fndecl) + : TREE_TYPE (CALL_EXPR_FN (fntype))); break; case FUNCTION_DECL: fndecl = fntype; |