diff options
author | Tom Tromey <tom@tromey.com> | 2021-06-11 08:14:09 -0600 |
---|---|---|
committer | Tom Tromey <tom@tromey.com> | 2021-06-11 08:14:09 -0600 |
commit | 48ec4c05c68bfec4b79e95807bd82e0df4634a6c (patch) | |
tree | 27c232057de54ea162dcdbfcf7466063119f19d9 /gdb/testsuite/gdb.rust/rawids.rs | |
parent | 2748c1b17e37c5acfae9d5dbcc627350c3d38167 (diff) | |
download | binutils-48ec4c05c68bfec4b79e95807bd82e0df4634a6c.zip binutils-48ec4c05c68bfec4b79e95807bd82e0df4634a6c.tar.gz binutils-48ec4c05c68bfec4b79e95807bd82e0df4634a6c.tar.bz2 |
Implement Rust raw identifiers
This patch implements Rust raw identifiers in the lexer in gdb. There
was an earlier patch to do this, but the contributor didn't reply to
my email asking whether he had sorted out his copyright assignment.
This is relatively straightforward, but a small test suite addition
was needd to ensure that the new test is skipped on older versions of
rustc -- ones that predate the introduction of raw identifiers.
gdb/ChangeLog
2021-06-11 Tom Tromey <tom@tromey.com>
PR rust/23427
* rust-parse.c (rust_parser::lex_identifier): Handle raw
identifiers.
(rust_lex_tests): Add raw identifier tests.
gdb/testsuite/ChangeLog
2021-06-11 Tom Tromey <tom@tromey.com>
PR rust/23427
* lib/rust-support.exp (rust_compiler_version): New caching proc.
* gdb.rust/rawids.exp: New file.
* gdb.rust/rawids.rs: New file.
Diffstat (limited to 'gdb/testsuite/gdb.rust/rawids.rs')
-rw-r--r-- | gdb/testsuite/gdb.rust/rawids.rs | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/gdb/testsuite/gdb.rust/rawids.rs b/gdb/testsuite/gdb.rust/rawids.rs new file mode 100644 index 0000000..f37e862 --- /dev/null +++ b/gdb/testsuite/gdb.rust/rawids.rs @@ -0,0 +1,26 @@ +// Copyright (C) 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 <http://www.gnu.org/licenses/>. + +#![allow(dead_code)] +#![allow(unused_variables)] +#![allow(unused_assignments)] + + +fn main () { + let r#if = 23; + let thread = 27; + + println!("{}, {}", r#if, r#thread); // set breakpoint here +} |