diff options
author | Tobias Burnus <burnus@net-b.de> | 2010-02-24 08:00:35 +0100 |
---|---|---|
committer | Tobias Burnus <burnus@gcc.gnu.org> | 2010-02-24 08:00:35 +0100 |
commit | 505a36f95b00543a758ab4b56c1f4bf89df4a992 (patch) | |
tree | c8589d2efe95338294877bc2f18d928392f02cb3 /gcc/fortran | |
parent | d8a06a82310d287e2521263a3489206a862a1224 (diff) | |
download | gcc-505a36f95b00543a758ab4b56c1f4bf89df4a992.zip gcc-505a36f95b00543a758ab4b56c1f4bf89df4a992.tar.gz gcc-505a36f95b00543a758ab4b56c1f4bf89df4a992.tar.bz2 |
[multiple changes]
2010-02-24 Tobias Burnus <burnus@net-b.de>
PR fortran/43042
* trans-expr.c (gfc_conv_initializer): Call directly
gfc_conv_constant for C_NULL_(FUN)PTR.
2010-02-24 Tobias Burnus <burnus@net-b.de>
PR fortran/43042
* gfortran.dg/c_ptr_tests_15.f90: New test.
From-SVN: r157029
Diffstat (limited to 'gcc/fortran')
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/trans-expr.c | 4 |
2 files changed, 10 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index dc650fe..af4bf20 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2010-02-24 Tobias Burnus <burnus@net-b.de> + + PR fortran/43042 + * trans-expr.c (gfc_conv_initializer): Call directly + gfc_conv_constant for C_NULL_(FUN)PTR. + 2010-02-22 Paul Thomas <pault@gcc.gnu.org> PR fortran/43072 diff --git a/gcc/fortran/trans-expr.c b/gcc/fortran/trans-expr.c index d712148..ecb577a 100644 --- a/gcc/fortran/trans-expr.c +++ b/gcc/fortran/trans-expr.c @@ -3949,6 +3949,10 @@ gfc_conv_initializer (gfc_expr * expr, gfc_typespec * ts, tree type, its kind. */ expr->ts.f90_type = derived->ts.f90_type; expr->ts.kind = derived->ts.kind; + + gfc_init_se (&se, NULL); + gfc_conv_constant (&se, expr); + return se.expr; } if (array) |