diff options
author | Keith Seitz <keiths@redhat.com> | 2017-10-18 11:05:45 -0700 |
---|---|---|
committer | Keith Seitz <keiths@redhat.com> | 2017-10-18 11:26:02 -0700 |
commit | c8ba13ad37c98262b94f99cc4f84ac0066c48cc2 (patch) | |
tree | 7c6f2cf2c229f58fa48e034cde0ef4f4e6abce27 /gas | |
parent | 3753468682a9c7982b6eba0fca58fbfc1cd5b9fb (diff) | |
download | fsf-binutils-gdb-c8ba13ad37c98262b94f99cc4f84ac0066c48cc2.zip fsf-binutils-gdb-c8ba13ad37c98262b94f99cc4f84ac0066c48cc2.tar.gz fsf-binutils-gdb-c8ba13ad37c98262b94f99cc4f84ac0066c48cc2.tar.bz2 |
Canonicalize conversion operators
Consider a conversion operator such as:
operator foo const* const* ();
There are two small parser problems, highlighted by this test:
(gdb) p operator foo const* const*
There is no field named operatorfoo const* const *
GDB is looking up the symbol "operatorfoo const* const*" -- it is missing a
space between the keyword "operator" and the type name "foo const* const*".
Additionally, this input of the user-defined type needs to be canonicalized
so that different "spellings" of the type are recognized:
(gdb) p operator const foo* const *
There is no field named operator const foo* const *
gdb/ChangeLog:
* c-exp.y (oper): Canonicalize conversion operators of user-defined
types.
Add whitespace to front of type name.
gdb/testsuite/ChangeLog:
* gdb.cp/cpexprs.cc (base) <operator fluff const* const*>: New
method.
(main): Call it.
* gdb.cp/cpexprs.exp: Add new conversion operator to test matrix.
Add additional user-defined conversion operator tests.
Diffstat (limited to 'gas')
0 files changed, 0 insertions, 0 deletions