mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-15 04:31:49 +08:00
96df3e28b8
Add support for the ALLOCATED keyword to the Fortran expression parser. gdb/ChangeLog: * f-exp.y (f77_keywords): Add allocated. * f-lang.c (evaluate_subexp_f): Handle UNOP_FORTRAN_ALLOCATED. (operator_length_f): Likewise. (print_subexp_f): Likewise. (dump_subexp_body_f): Likewise. (operator_check_f): Likewise. * std-operator.def (UNOP_FORTRAN_ALLOCATED): New operator. gdb/testsuite/ChangeLog: * gdb.fortran/allocated.exp: New file. * gdb.fortran/allocated.f90: New file.
50 lines
1.3 KiB
Fortran
50 lines
1.3 KiB
Fortran
! Copyright 2021 Free Software Foundation, Inc.
|
|
!
|
|
! This program is free software; you can redistribute it and/or modify
|
|
! it under the terms of the GNU General Public License as published by
|
|
! the Free Software Foundation; either version 3 of the License, or
|
|
! (at your option) any later version.
|
|
!
|
|
! This program is distributed in the hope that it will be useful,
|
|
! but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
! MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
! GNU General Public License for more details.
|
|
!
|
|
! You should have received a copy of the GNU General Public License
|
|
! along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|
|
|
!
|
|
! Start of test program.
|
|
!
|
|
program test
|
|
|
|
integer, allocatable :: array (:, :)
|
|
logical is_allocated
|
|
|
|
is_allocated = allocated (array)
|
|
print *, is_allocated ! Breakpoint 1
|
|
|
|
! Allocate or associate any variables as needed.
|
|
allocate (array (-5:4, -2:7))
|
|
|
|
is_allocated = allocated (array)
|
|
print *, is_allocated ! Breakpoint 2
|
|
|
|
deallocate (array)
|
|
|
|
is_allocated = allocated (array)
|
|
print *, is_allocated ! Breakpoint 3
|
|
|
|
allocate (array (3:8, 2:7))
|
|
|
|
is_allocated = allocated (array)
|
|
print *, is_allocated ! Breakpoint 4
|
|
|
|
! All done. Deallocate.
|
|
deallocate (array)
|
|
|
|
is_allocated = allocated (array)
|
|
print *, is_allocated ! Breakpoint 5
|
|
|
|
end program test
|