This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA/Ada] Allow 'thread' to be used as a variable name in expressions.


> gdb/ChangeLog:
> 
>     * ada-lex.l (rules): Only recognize 'thread' as a
>     delimiter when followed by numerals, as for c-exp.y.
>     Use new rewind_to_char function to rewind the input for
>     expression-delimiting tokens.
>     (rewind_to_char): New function.
> 
> gdb/testsuite/ChangeLog:
> 
>     * gdb.ada/expr_delims.exp: New file.
>     * gdb.ada/expr_delims/foo.adb: New file.

Thanks, Paul. This is pre-approved, with a couple of small requests.

> diff --git a/gdb/testsuite/gdb.ada/expr_delims/foo.adb b/gdb/testsuite/gdb.ada/expr_delims/foo.adb
> new file mode 100644
> index 0000000..8384741
> --- /dev/null
> +++ b/gdb/testsuite/gdb.ada/expr_delims/foo.adb
> @@ -0,0 +1,26 @@
> +--  Copyright 2008-2013 Free Software Foundation, Inc.

The copyright year range should start the year the file was committed
to medium. Was it 2008?

> +--
> +--  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/>.
> +
> +with Ada.Text_IO; use Ada.Text_IO;

Can you replace the use of Ada.Text_IO by a dummy package that
provides the "Put" function? That way, the testcase can be used
when testing no-runtime configurations. See gdb.ada/bp_reset/io.ads,
for instance.

> +
> +procedure Foo is
> +   Thread: Integer;
> +begin
> +   Thread := 0;
> +   for I in 1 .. 100 loop
> +      Thread := Thread + I; -- STOP_HERE
> +   end loop;
> +   Put(Integer'Image(Thread));
> +end Foo;

-- 
Joel


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]