diff options
author | Jan Kratochvil <jan.kratochvil@redhat.com> | 2012-06-13 16:10:10 +0000 |
---|---|---|
committer | Jan Kratochvil <jan.kratochvil@redhat.com> | 2012-06-13 16:10:10 +0000 |
commit | 50af5481d5feece564c8b03bfb4a647dc7573f3c (patch) | |
tree | 6d434da197be7f970b21ecc8f8f4afc417571b76 /gdb/cp-support.h | |
parent | d55637df6923689396e58c3d789e82314f4826ec (diff) | |
download | gdb-50af5481d5feece564c8b03bfb4a647dc7573f3c.zip gdb-50af5481d5feece564c8b03bfb4a647dc7573f3c.tar.gz gdb-50af5481d5feece564c8b03bfb4a647dc7573f3c.tar.bz2 |
gdb/
PR c++/14177 - Fix parsing TYPENAME:: in parentheses.
* c-exp.y (classify_inner_name): Remove caller assumptions in the
function comment. Return ERROR for unresolved cases. Implement
returning proper NAME.
(yylex): Accept also NAME from classify_inner_name.
* cp-namespace.c (cp_lookup_nested_type): Rename to ...
(cp_lookup_nested_symbol): ... here. Return any found symbol, not just
LOC_TYPEDEF type.
* cp-support.h (cp_lookup_nested_type): Update its declaration.
gdb/testsuite/
PR c++/14177 - Fix parsing TYPENAME:: in parentheses.
* gdb.cp/cpexprs.cc (class CV, CV::i, ATTRIBUTE_USED, CV_f): New.
(test_function): Call CV_f.
* gdb.cp/cpexprs.exp (p 'CV::m(int)', p CV::m(int))
(p 'CV::m(int) const', p CV::m(int) const, p 'CV::m(int) volatile')
(p CV::m(int) volatile, p 'CV::m(int) const volatile')
(p CV::m(int) const volatile, p CV_f(int), p CV_f(CV::t))
(p CV_f(CV::i)): New tests.
Diffstat (limited to 'gdb/cp-support.h')
-rw-r--r-- | gdb/cp-support.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/gdb/cp-support.h b/gdb/cp-support.h index 9c150f8..0d2b513 100644 --- a/gdb/cp-support.h +++ b/gdb/cp-support.h @@ -213,9 +213,9 @@ extern struct symbol *cp_lookup_symbol_imports_or_template const struct block *block, const domain_enum domain); -extern struct type *cp_lookup_nested_type (struct type *parent_type, - const char *nested_name, - const struct block *block); +extern struct symbol *cp_lookup_nested_symbol (struct type *parent_type, + const char *nested_name, + const struct block *block); struct type *cp_lookup_transparent_type (const char *name); |