Add comprehensive C++ operator linespec/location/completion tests
authorPedro Alves <palves@redhat.com>
Sat, 25 Nov 2017 00:09:25 +0000 (00:09 +0000)
committerPedro Alves <palves@redhat.com>
Sat, 25 Nov 2017 00:09:25 +0000 (00:09 +0000)
commit6a3c6ee41898743234d8fd9f9cab15f2ecdaba49
treeabf8f8fafd9bd927a453164f5787055fbb4e9c6f
parent13450e7c7fdbdb9b25aae68c60475d061ed427d3
Add comprehensive C++ operator linespec/location/completion tests

This exercises the special handling C++ operators require in several
places in the linespec parser, both the linespec and explicit location
completers, symbol lookup, etc.  Particularly, makes sure all that
works without quoting.

Note that despite the apparent smallish size, this adds thousands of
tests to the testsuite, due to combination explosion (linespecs,
explicit locations, tab completion, complete command, completion at
different points in each function, etc.)

Grows the gdb.linespec/ tests like this:

 -# of expected passes           3464
 +# of expected passes           7823

gdb/testsuite/ChangeLog:
2017-11-25  Pedro Alves  <palves@redhat.com>

* gdb.linespec/cpls-ops.cc: New file.
* gdb.linespec/cpls-ops.exp: New file.
* lib/completion-support.exp (test_complete_prefix_range_re): New,
factored out from ...
(test_complete_prefix_range): ... this.
gdb/testsuite/ChangeLog
gdb/testsuite/gdb.linespec/cpls-ops.cc [new file with mode: 0644]
gdb/testsuite/gdb.linespec/cpls-ops.exp [new file with mode: 0644]
gdb/testsuite/lib/completion-support.exp