9e531d3749
This patch adds an easy way to write tests for expected multiline output. For example we can test carets and underlines for a particular diagnostic with: /* { dg-begin-multiline-output "" } typedef struct _GMutex GMutex; ^~~~~~~ { dg-end-multiline-output "" } */ multiline.exp is used by prune.exp; hence we need to load it before prune.exp via *load_gcc_lib* for the testsuites of the various non-"gcc" support libraries (e.g. boehm-gc). gcc/testsuite/ChangeLog: * lib/multiline.exp: New file. * lib/prune.exp: Load multiline.exp. (prune_gcc_output): Call into multiline.exp to handle any multiline output directives. * lib/libgo.exp: Load multiline.exp before prune.exp, using load_gcc_lib. boehm-gc/ChangeLog: * testsuite/lib/boehm-gc.exp: Load multiline.exp before prune.exp, using load_gcc_lib. libatomic/ChangeLog: * testsuite/lib/libatomic.exp: Load multiline.exp before prune.exp, using load_gcc_lib. libgomp/ChangeLog: * testsuite/lib/libgomp.exp: Load multiline.exp before prune.exp, using load_gcc_lib. libitm/ChangeLog: * testsuite/lib/libitm.exp: Load multiline.exp before prune.exp, using load_gcc_lib. libvtv/ChangeLog: * testsuite/lib/libvtv.exp: Load multiline.exp before prune.exp, using load_gcc_lib. From-SVN: r228655
55 lines
1.6 KiB
Plaintext
55 lines
1.6 KiB
Plaintext
# Copyright (C) 2010 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 GCC; see the file COPYING3. If not see
|
|
# <http://www.gnu.org/licenses/>.
|
|
|
|
set gccdir [lookfor_file $tool_root_dir gcc/libgcc.a]
|
|
if {$gccdir != ""} {
|
|
set gccdir [file dirname $gccdir]
|
|
}
|
|
set GOC_UNDER_TEST "$gccdir/gccgo -B$gccdir/"
|
|
set TESTING_IN_BUILD_TREE 1
|
|
|
|
if [info exists GOTEST_TMPDIR] {
|
|
set tmpdir $GOTEST_TMPDIR
|
|
}
|
|
|
|
proc go_maybe_build_wrapper { args } {
|
|
libgo_maybe_build_wrapper $args
|
|
}
|
|
|
|
# DejaGnu does not have proper library search paths for load_lib.
|
|
# We have to explicitly load everything that go.exp wants to load.
|
|
|
|
proc load_gcc_lib { filename } {
|
|
global srcdir loaded_libs
|
|
|
|
load_file $srcdir/../../gcc/testsuite/lib/$filename
|
|
set loaded_libs($filename) ""
|
|
}
|
|
|
|
load_gcc_lib multiline.exp
|
|
load_gcc_lib prune.exp
|
|
load_gcc_lib target-libpath.exp
|
|
load_gcc_lib wrapper.exp
|
|
load_gcc_lib target-supports.exp
|
|
load_gcc_lib target-utils.exp
|
|
load_gcc_lib gcc-defs.exp
|
|
load_gcc_lib timeout.exp
|
|
load_gcc_lib go.exp
|
|
|
|
proc libgo_init { args } {
|
|
go_init $args
|
|
}
|