[python/Ada] gdb.lookup_type fails to looking primitive type
authorJoel Brobecker <brobecker@adacore.com>
Mon, 12 Jan 2015 11:46:34 +0000 (15:46 +0400)
committerJoel Brobecker <brobecker@adacore.com>
Tue, 13 Jan 2015 09:38:58 +0000 (13:38 +0400)
commit04dccad086aa9974fb66f8b5d1c1fb32d5a6ae0e
treeadbe6e4e6e5e52a4d28a1e3964bcde7624f31902
parent15eec7902fb3fcee295de60109c8431e70229d27
[python/Ada] gdb.lookup_type fails to looking primitive type

The following change...

    commit 1994afbf19892c9e614a034fbf1a5233e9addce3
    Date:   Tue Dec 23 07:55:39 2014 -0800
    Subject: Look up primitive types as symbols.

... caused the following regression:

    % gdb
    (gdb) set lang ada
    (gdb) python print gdb.lookup_type('character')
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
    gdb.error: No type named character.
    Error while executing Python code.

This is because the language_lookup_primitive_type_as_symbol call
was moved to the la_lookup_symbol_nonlocal hook. A couple of
implementations have been upated accordingly, but the Ada version
has not. This patch fixes this omission.

gdb/ChangeLog:

        * ada-lang.c (ada_lookup_symbol_nonlocal): If name not found
        in static block, then try searching for primitive types.

gdb/testsuite/ChangeLog:

        * gdb.python/py-lookup-type.exp: New file.
gdb/ChangeLog
gdb/ada-lang.c
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.python/py-lookup-type.exp [new file with mode: 0644]