# Copyright 2013-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 . standard_testfile # Fission doesn't support macros yet. Bug 15954. if [using_fission] { unsupported "fission" return -1 } if [is_remote host] { unsupported "compiling on a remote host does not support a filename with directory." return 0 } set opts {debug additional_flags=-I.} get_compiler_info if [test_compiler_info gcc*] { lappend opts additional_flags=-g3 } elseif [test_compiler_info clang*] { lappend opts additional_flags=-fdebug-macro } if { [file pathtype $objdir] == "relative" } { untested "objdir $objdir should be absolute" return } set saved_pwd [pwd] cd $srcdir/${subdir}/base/two set err [gdb_compile "../../${srcfile}" "${binfile}" executable $opts] cd $saved_pwd if { $err != "" } { untested "compilation failed" return -1 } clean_restart ${testfile} # Test macros respect DW_AT_comp_dir. # "list header_two_func" does not set exactly the one line we want. if ![runto header_two_func] { return -1 } gdb_test "info macro HEADER" "\r\n#define HEADER 2"