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]

[PATCH v6 00/11] c++/14441: Rvalue reference support


This patch series was submitted in June, 2016, and the original author does
not have the time to see this through. Given that we would like this in the
8.0 release, I have contacted the orginal author, who is allowing me to
champion his patch on his behalf.

When this series was last reviewed, revisions were requested in patches 8
and 11. I have highlighted in those patches what I have changed over the last
submitted patch version (v5).

Keith Seitz (11):
  Add definitions for rvalue reference types
  Change {lookup,make}_reference_type API
  Add ability to return rvalue reference values from value_ref
  Support rvalue reference type in parser
  Implement demangling for rvalue reference type names
  Implement printing of rvalue reference types and values
  Support DW_TAG_rvalue_reference type
  Support rvalue references in the gdb python module (includes doc/)
  Convert lvalue reference type check to general reference type check
  Add rvalue references to overloading resolution
  Add rvalue reference tests and NEWS entry

 gdb/ChangeLog                                      | 188 +++++++++++++++++++++
 gdb/NEWS                                           |   3 +
 gdb/aarch64-tdep.c                                 |   5 +-
 gdb/ada-lang.c                                     |   2 +-
 gdb/amd64-tdep.c                                   |   2 +-
 gdb/amd64-windows-tdep.c                           |   1 +
 gdb/arm-tdep.c                                     |   5 +-
 gdb/ax-gdb.c                                       |   2 +
 gdb/c-exp.y                                        |   6 +-
 gdb/c-typeprint.c                                  |  10 +-
 gdb/c-valprint.c                                   |  14 +-
 gdb/c-varobj.c                                     |  10 +-
 gdb/compile/compile-c-symbols.c                    |   2 +-
 gdb/completer.c                                    |   3 +-
 gdb/cp-name-parser.y                               |   4 +
 gdb/cp-support.c                                   |   3 +-
 gdb/darwin-nat-info.c                              |   2 +-
 gdb/doc/python.texi                                |   4 +
 gdb/dwarf2loc.c                                    |   4 +-
 gdb/dwarf2read.c                                   |  15 +-
 gdb/eval.c                                         |  16 +-
 gdb/f-exp.y                                        |   2 +-
 gdb/findvar.c                                      |   6 +-
 gdb/gdbtypes.c                                     | 105 ++++++++++--
 gdb/gdbtypes.h                                     |  20 ++-
 gdb/guile/scm-type.c                               |   2 +-
 gdb/guile/scm-value.c                              |   2 +-
 gdb/hppa-tdep.c                                    |   1 +
 gdb/infcall.c                                      |   5 +-
 gdb/language.c                                     |   3 +-
 gdb/m32c-tdep.c                                    |   8 +-
 gdb/m88k-tdep.c                                    |   1 +
 gdb/mn10300-tdep.c                                 |   1 +
 gdb/msp430-tdep.c                                  |   2 +-
 gdb/parse.c                                        |  39 +++--
 gdb/parser-defs.h                                  |   1 +
 gdb/ppc-sysv-tdep.c                                |   7 +-
 gdb/printcmd.c                                     |   2 +-
 gdb/python/lib/gdb/command/explore.py              |   2 +-
 gdb/python/lib/gdb/types.py                        |   4 +-
 gdb/python/py-type.c                               |  14 +-
 gdb/python/py-value.c                              |  37 ++--
 gdb/python/py-xmethods.c                           |  10 +-
 gdb/s390-linux-tdep.c                              |   2 +-
 gdb/sparc-tdep.c                                   |   1 +
 gdb/sparc64-tdep.c                                 |   1 +
 gdb/spu-tdep.c                                     |   1 +
 gdb/stabsread.c                                    |   3 +-
 gdb/symtab.c                                       |   3 +-
 gdb/testsuite/ChangeLog                            |  20 +++
 gdb/testsuite/gdb.cp/demangle.exp                  |  42 ++++-
 gdb/testsuite/gdb.cp/rvalue-ref-casts.cc           |  75 ++++++++
 gdb/testsuite/gdb.cp/rvalue-ref-casts.exp          |  76 +++++++++
 gdb/testsuite/gdb.cp/rvalue-ref-overload.cc        |  86 ++++++++++
 gdb/testsuite/gdb.cp/rvalue-ref-overload.exp       |  69 ++++++++
 gdb/testsuite/gdb.cp/rvalue-ref-params.cc          |  83 +++++++++
 gdb/testsuite/gdb.cp/rvalue-ref-params.exp         |  64 +++++++
 gdb/testsuite/gdb.cp/rvalue-ref-sizeof.cc          |  75 ++++++++
 gdb/testsuite/gdb.cp/rvalue-ref-sizeof.exp         |  43 +++++
 gdb/testsuite/gdb.cp/rvalue-ref-types.cc           |  79 +++++++++
 gdb/testsuite/gdb.cp/rvalue-ref-types.exp          | 165 ++++++++++++++++++
 gdb/testsuite/gdb.python/py-rvalue-ref-value-cc.cc |  55 ++++++
 .../gdb.python/py-rvalue-ref-value-cc.exp          |  56 ++++++
 gdb/typeprint.c                                    |   4 +-
 gdb/valarith.c                                     |   6 +-
 gdb/valops.c                                       |  70 ++++----
 gdb/valprint.c                                     |   5 +-
 gdb/value.c                                        |  12 +-
 gdb/value.h                                        |   2 +-
 gdb/varobj.c                                       |   2 +-
 70 files changed, 1507 insertions(+), 168 deletions(-)
 create mode 100644 gdb/testsuite/gdb.cp/rvalue-ref-casts.cc
 create mode 100644 gdb/testsuite/gdb.cp/rvalue-ref-casts.exp
 create mode 100644 gdb/testsuite/gdb.cp/rvalue-ref-overload.cc
 create mode 100644 gdb/testsuite/gdb.cp/rvalue-ref-overload.exp
 create mode 100644 gdb/testsuite/gdb.cp/rvalue-ref-params.cc
 create mode 100644 gdb/testsuite/gdb.cp/rvalue-ref-params.exp
 create mode 100644 gdb/testsuite/gdb.cp/rvalue-ref-sizeof.cc
 create mode 100644 gdb/testsuite/gdb.cp/rvalue-ref-sizeof.exp
 create mode 100644 gdb/testsuite/gdb.cp/rvalue-ref-types.cc
 create mode 100644 gdb/testsuite/gdb.cp/rvalue-ref-types.exp
 create mode 100644 gdb/testsuite/gdb.python/py-rvalue-ref-value-cc.cc
 create mode 100644 gdb/testsuite/gdb.python/py-rvalue-ref-value-cc.exp

-- 
2.1.0


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