binutils-gdb/gdb/testsuite/lib/rust-support.exp
Tom Tromey 67218854b1 Update gdb test suite for Rust
This updates the gdb test suite for Rust.

2016-05-17  Tom Tromey  <tom@tromey.com>
	    Manish Goregaokar <manishsmail@gmail.com>

	* lib/rust-support.exp: New file.
	* lib/gdb.exp (skip_rust_tests): New proc.
	(build_executable_from_specs): Handle rust.
	* lib/future.exp (gdb_find_rustc): New proc.
	(gdb_default_target_compile): Handle rust.
	* gdb.rust/expr.exp: New file.
	* gdb.rust/generics.exp: New file.
	* gdb.rust/generics.rs: New file.
	* gdb.rust/methods.exp: New file.
	* gdb.rust/methods.rs: New file.
	* gdb.rust/modules.exp: New file.
	* gdb.rust/modules.rs: New file.
	* gdb.rust/simple.exp: New file.
	* gdb.rust/simple.rs: New file.
2016-05-17 12:02:01 -06:00

38 lines
1.3 KiB
Plaintext

# Copyright 2016 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/>.
# Auxiliary function to set the language to Rust.
# The result is 1 (true) for success, 0 (false) for failure.
proc set_lang_rust {} {
if [gdb_test_no_output "set language rust"] {
return 0
}
if [gdb_test "show language" ".* source language is \"rust\"." \
"set language to \"rust\""] {
return 0
}
return 1
}
proc gdb_compile_rust {sources dest options} {
if {[llength $sources] > 1} {
error "gdb rust setup can only compile one source file at a time"
}
if {[gdb_compile [lindex $sources 0] $dest executable $options] != ""} {
return -1
}
return ""
}