
This commit is the result of running the gdb/copyright.py script, which automated the update of the copyright year range for all source files managed by the GDB project to be updated to include year 2023.
55 lines
1.9 KiB
Text
55 lines
1.9 KiB
Text
# Copyright 2010-2023 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/>.
|
|
|
|
load_lib fortran.exp
|
|
|
|
if {[skip_fortran_tests]} { return -1 }
|
|
|
|
standard_testfile library-module-main.f90
|
|
set srclibfile ${testfile}-lib.f90
|
|
set libfile [standard_output_file ${testfile}-lib.so]
|
|
|
|
if { [gdb_compile_shlib "${srcdir}/${subdir}/${srclibfile}" $libfile {debug f90}] != "" } {
|
|
untested "failed to compile shared library"
|
|
return -1
|
|
}
|
|
|
|
# prepare_for_testing cannot be used as linking with $libfile cannot be passed
|
|
# just for the linking phase (and not the source compilation phase). And any
|
|
# warnings on ignored $libfile abort the process.
|
|
|
|
if { [gdb_compile $srcdir/$subdir/$srcfile $binfile executable [list debug f90 shlib=$libfile]] != "" } {
|
|
untested "failed to compile"
|
|
return -1
|
|
}
|
|
|
|
clean_restart $testfile
|
|
|
|
gdb_load_shlib $libfile
|
|
|
|
if {![fortran_runto_main]} {
|
|
return
|
|
}
|
|
|
|
gdb_breakpoint $srclibfile:[gdb_get_line_number "i-is-2-in-lib" $srclibfile]
|
|
gdb_continue_to_breakpoint "i-is-2-in-lib" ".*i-is-2-in-lib.*"
|
|
gdb_test "print var_i" " = 2" "print var_i in lib"
|
|
|
|
gdb_breakpoint $srcfile:[gdb_get_line_number "i-is-2-in-main" $srcfile]
|
|
gdb_continue_to_breakpoint "i-is-2-in-main" ".*i-is-2-in-main.*"
|
|
gdb_test "print var_i" " = 2" "print var_i in main"
|
|
|
|
gdb_test "print var_j" " = 3"
|
|
gdb_test "print var_k" "No symbol \"var_k\" in current context\\."
|