# Copyright 2014-2020 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 . if {[skip_shlib_tests]} { return 0 } standard_testfile .c symtab-search-order-1.c symtab-search-order-shlib-1.c set srcfile $srcdir/$subdir/$srcfile set srcfile2 $srcdir/$subdir/$srcfile2 set lib1src $srcdir/$subdir/$srcfile3 set lib1 [standard_output_file symtab-search-order-1.sl] set lib_opts "debug" set exec_opts [list debug shlib=$lib1] if [get_compiler_info] { return -1 } if { [gdb_compile_shlib $lib1src $lib1 $lib_opts] != "" || [gdb_compile [list $srcfile $srcfile2] $binfile executable \ $exec_opts] != ""} { untested "failed to compile" return -1 } # Start with a fresh gdb. clean_restart $binfile gdb_load_shlib $lib1 if ![runto_main] { fail "can't run to main" return -1 } # PR 17564 # Expand something in the shared library, # and then try to print static_global in the binary. # We should get the static_global in the binary. # Note: static_global in the binary needs to be in a file # other than the one with "main" because gdb will expand # the symtab with main when starting. gdb_test "p shlib_1_func" "= .*" gdb_test "p static_global" " = 23"