* [RFA/testsuite/ada] Add test with function returning "small" array of floats
@ 2006-12-26 5:51 Joel Brobecker
2006-12-26 14:07 ` Mark Kettenis
0 siblings, 1 reply; 4+ messages in thread
From: Joel Brobecker @ 2006-12-26 5:51 UTC (permalink / raw)
To: gdb-patches
[-- Attachment #1: Type: text/plain, Size: 774 bytes --]
Hello,
Following a question raised by Mark in:
http://www.sourceware.org/ml/gdb-patches/2006-12/msg00312.html
I decided to add a test in gdb.ada/array_return to cover that case.
2006-12-26 Joel Brobecker <brobecker@adacore.com>
* gdb.ada/array_return/pck.ads (Small_Float_Vector): New type.
(Create_Small_Float_Vector): New function.
* gdb.ada/array_return/pck.adb (Create_Small_Float_Vector): Add
function body.
* gdb.ada/array_return/p.adb: Use new type and function from
package Pck.
* gdb.ada/array_return.exp: Add a test verifying that GDB is
able to print the value returned by a function returning an
array of float.
Tested on sparc64-solaris. OK to apply?
Thank you,
--
Joel
[-- Attachment #2: float-array-return.diff --]
[-- Type: text/plain, Size: 3778 bytes --]
Index: array_return/pck.ads
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.ada/array_return/pck.ads,v
retrieving revision 1.2
diff -u -p -r1.2 pck.ads
--- array_return/pck.ads 6 Oct 2006 18:05:58 -0000 1.2
+++ array_return/pck.ads 26 Dec 2006 05:32:06 -0000
@@ -20,8 +20,11 @@ package Pck is
type Data_Small is array (1 .. 2) of Integer;
type Data_Large is array (1 .. 4) of Integer;
+ type Small_Float_Vector is array (1 .. 2) of Float;
+
function Create_Small return Data_Small;
function Create_Large return Data_Large;
+ function Create_Small_Float_Vector return Small_Float_Vector;
end Pck;
Index: array_return/pck.adb
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.ada/array_return/pck.adb,v
retrieving revision 1.2
diff -u -p -r1.2 pck.adb
--- array_return/pck.adb 6 Oct 2006 18:05:58 -0000 1.2
+++ array_return/pck.adb 26 Dec 2006 05:32:06 -0000
@@ -27,4 +27,9 @@ package body Pck is
return (others => 2);
end Create_Large;
+ function Create_Small_Float_Vector return Small_Float_Vector is
+ begin
+ return (others => 4.25);
+ end Create_Small_Float_Vector;
+
end Pck;
Index: array_return/p.adb
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.ada/array_return/p.adb,v
retrieving revision 1.2
diff -u -p -r1.2 p.adb
--- array_return/p.adb 6 Oct 2006 18:05:58 -0000 1.2
+++ array_return/p.adb 26 Dec 2006 05:32:06 -0000
@@ -20,8 +20,11 @@ with Pck; use Pck;
procedure P is
Small : Data_Small;
Large : Data_Large;
+ Vector : Small_Float_Vector;
begin
Small := Create_Small;
Large := Create_Large;
+ Vector := Create_Small_Float_Vector;
Small (1) := Large (1);
+ Small (2) := Integer (Vector (1));
end P;
Index: array_return.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.ada/array_return.exp,v
retrieving revision 1.2
diff -u -p -r1.2 array_return.exp
--- array_return.exp 7 Feb 2006 19:37:46 -0000 1.2
+++ array_return.exp 26 Dec 2006 05:32:06 -0000
@@ -54,12 +54,16 @@ gdb_test "break create_large" \
"Breakpoint \[0-9\]+ at.*: file .*pck.adb, line \[0-9\]+." \
"insert breakpoint in create_large"
+gdb_test "break create_small_float_vector" \
+ "Breakpoint \[0-9\]+ at.*: file .*pck.adb, line \[0-9\]+." \
+ "insert breakpoint in create_small_float_vector"
+
# Then continue until reaching the first breakpoint inside Create_Small,
# and then do a "finish".
gdb_test "cont" \
"Breakpoint \[0-9\]+, pck.create_small \\(\\).*" \
- "Continuing to Create.Small"
+ "Continuing to Create_Small"
gdb_test "finish" \
"Value returned is \\\$\[0-9\]+ = \\(1, 1\\)" \
@@ -70,7 +74,7 @@ gdb_test "finish" \
gdb_test "cont" \
"Breakpoint \[0-9\]+, pck.create_large \\(\\).*" \
- "Continuing to Create.Large"
+ "Continuing to Create_Large"
# On hppa32, the value returned is too large to be returned via a register.
# Instead, it is returned using the struct convention, and the debugger
@@ -84,3 +88,14 @@ gdb_test "finish" \
"Value returned is \\\$\[0-9\]+ = \\(2, 2, 2, 2\\)" \
"value printed by finish of Create_Large"
+# Now continue until reaching the third breakpoint, and then do another
+# "finish" again.
+
+gdb_test "cont" \
+ "Breakpoint \[0-9\]+, pck.create_small_float_vector \\(\\).*" \
+ "Continuing to Create_Small_Float_Vector"
+
+gdb_test "finish" \
+ "Value returned is \\\$\[0-9\]+ = \\(4.25, 4.25\\)" \
+ "value printed by finish of Create_Small_Float_Vector"
+
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [RFA/testsuite/ada] Add test with function returning "small" array of floats
2006-12-26 5:51 [RFA/testsuite/ada] Add test with function returning "small" array of floats Joel Brobecker
@ 2006-12-26 14:07 ` Mark Kettenis
2006-12-26 15:21 ` Daniel Jacobowitz
0 siblings, 1 reply; 4+ messages in thread
From: Mark Kettenis @ 2006-12-26 14:07 UTC (permalink / raw)
To: brobecker; +Cc: gdb-patches
> Date: Tue, 26 Dec 2006 09:52:33 +0400
> From: Joel Brobecker <brobecker@adacore.com>
>
> Hello,
>
> Following a question raised by Mark in:
>
> http://www.sourceware.org/ml/gdb-patches/2006-12/msg00312.html
>
> I decided to add a test in gdb.ada/array_return to cover that case.
>
> 2006-12-26 Joel Brobecker <brobecker@adacore.com>
>
> * gdb.ada/array_return/pck.ads (Small_Float_Vector): New type.
> (Create_Small_Float_Vector): New function.
> * gdb.ada/array_return/pck.adb (Create_Small_Float_Vector): Add
> function body.
> * gdb.ada/array_return/p.adb: Use new type and function from
> package Pck.
> * gdb.ada/array_return.exp: Add a test verifying that GDB is
> able to print the value returned by a function returning an
> array of float.
>
> Tested on sparc64-solaris. OK to apply?
Looks reasonable to me, but then I don't know any Ada.
Mark
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [RFA/testsuite/ada] Add test with function returning "small" array of floats
2006-12-26 14:07 ` Mark Kettenis
@ 2006-12-26 15:21 ` Daniel Jacobowitz
2006-12-27 6:16 ` Joel Brobecker
0 siblings, 1 reply; 4+ messages in thread
From: Daniel Jacobowitz @ 2006-12-26 15:21 UTC (permalink / raw)
To: Mark Kettenis; +Cc: brobecker, gdb-patches
On Tue, Dec 26, 2006 at 03:06:53PM +0100, Mark Kettenis wrote:
> > Tested on sparc64-solaris. OK to apply?
>
> Looks reasonable to me, but then I don't know any Ada.
Ditto - Joel, I think you should go ahead.
--
Daniel Jacobowitz
CodeSourcery
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [RFA/testsuite/ada] Add test with function returning "small" array of floats
2006-12-26 15:21 ` Daniel Jacobowitz
@ 2006-12-27 6:16 ` Joel Brobecker
0 siblings, 0 replies; 4+ messages in thread
From: Joel Brobecker @ 2006-12-27 6:16 UTC (permalink / raw)
To: Mark Kettenis, gdb-patches
> On Tue, Dec 26, 2006 at 03:06:53PM +0100, Mark Kettenis wrote:
> > > Tested on sparc64-solaris. OK to apply?
> >
> > Looks reasonable to me, but then I don't know any Ada.
>
> Ditto - Joel, I think you should go ahead.
Thank you! This is now checked in.
--
Joel
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2006-12-27 6:16 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2006-12-26 5:51 [RFA/testsuite/ada] Add test with function returning "small" array of floats Joel Brobecker
2006-12-26 14:07 ` Mark Kettenis
2006-12-26 15:21 ` Daniel Jacobowitz
2006-12-27 6:16 ` Joel Brobecker
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox