* gdb.cp/templates.cc (GetMax): New template.

(main): Declare two instances of GetMax.
	* gdb.cp/templates.exp: Add new test.
This commit is contained in:
Jerome Guitton 2009-04-27 12:14:09 +00:00
parent aad80b2683
commit 945a118de0
3 changed files with 21 additions and 0 deletions

View File

@ -1,3 +1,9 @@
2009-04-27 Jerome Guitton <guitton@adacore.com>
* gdb.cp/templates.cc (GetMax): New template.
(main): Declare two instances of GetMax.
* gdb.cp/templates.exp: Add new test.
2009-04-27 Jan Kratochvil <jan.kratochvil@redhat.com>
* gdb.cp/abstract-origin.exp, gdb.cp/abstract-origin.cc: New test.

View File

@ -492,6 +492,13 @@ int
T5<T>::value()
{ return val; }
template <class T>
T GetMax (T a, T b) {
T result;
result = (a>b)? a : b;
// set breakpoint on a line with no real code
return (result);
}
#if ! defined(__GNUC__) || defined(GCC_BUG)
template<class T>
@ -706,6 +713,7 @@ template<class T> T Garply<T>::garply (int i, T tt)
int main()
{
int i;
long l, m, n;
#ifdef usestubs
set_debug_traps();
breakpoint();
@ -766,6 +774,8 @@ int main()
y = x + fc.x;
i=GetMax<int>(x,y);
n=GetMax<long>(l,m);
return 0;

View File

@ -157,6 +157,11 @@ proc test_template_breakpoints {} {
"Breakpoint.*at.* file .*${testfile}.cc, line.*" \
"value method breakpoint"
set bp_location [gdb_get_line_number \
"set breakpoint on a line with no real code"]
gdb_test "break ${testfile}.cc:${bp_location}" \
"Breakpoint.*at.* file .*${testfile}.cc, line.*(2 locations).*" \
"breakpoint on a line with no real code"
delete_breakpoints
}