Commit ed0ba472 by Tobias Burnus Committed by Tobias Burnus

re PR fortran/54301 (Add optional warning if pointer assigning a local variable…

re PR fortran/54301 (Add optional warning if pointer assigning a local variable to a nonlocal pointer)

2012-08-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54301
        * expr.c (gfc_check_pointer_assign): Warn when a pointer,
        which is a function result, might outlive its target.

2012-08-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54301
        * gfortran.dg/warn_target_lifetime_2.f90: New.

From-SVN: r190542
parent 07bc8ae8
2012-08-20 Tobias Burnus <burnus@net-b.de>
PR fortran/54301
* expr.c (gfc_check_pointer_assign): Warn when a pointer,
which is a function result, might outlive its target.
2012-08-20 Tobias Burnus <burnus@net-b.de>
PR fortran/54301
* expr.c (gfc_check_pointer_assign): Warn when the pointer
might outlive its target.
* gfortran.h (struct gfc_option_t): Add warn_target_lifetime.
......
......@@ -3673,6 +3673,7 @@ gfc_check_pointer_assign (gfc_expr *lvalue, gfc_expr *rvalue)
warn = lvalue->symtree->n.sym->attr.dummy
|| lvalue->symtree->n.sym->attr.result
|| lvalue->symtree->n.sym->attr.function
|| lvalue->symtree->n.sym->attr.host_assoc
|| lvalue->symtree->n.sym->attr.use_assoc
|| lvalue->symtree->n.sym->attr.in_common;
......
2012-08-20 Tobias Burnus <burnus@net-b.de>
PR fortran/54301
* gfortran.dg/warn_target_lifetime_2.f90: New.
2012-08-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/10416
......
! { dg-do compile }
! { dg-options "-Wtarget-lifetime" }
!
! PR fortran/54301
!
function f()
integer, pointer :: f
integer, target :: t
f => t ! { dg-warning "Pointer at .1. in pointer assignment might outlive the pointer target" }
end
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment