Skip to content

Commit 1c81241

Browse files
tjj2017martin
authored andcommitted
Add a test for library-level generic instantiations.
1 parent c3c1a5f commit 1c81241

File tree

6 files changed

+31
-0
lines changed

6 files changed

+31
-0
lines changed
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package body Gen_Pack is
2+
3+
-------
4+
-- G --
5+
-------
6+
7+
function G (V : T) return T is
8+
begin
9+
return V;
10+
end G;
11+
12+
end Gen_Pack;
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
generic
2+
type T is (<>);
3+
package Gen_Pack is
4+
function G (V : T) return T;
5+
end Gen_Pack;
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
with My_Pack;
2+
procedure Main is
3+
I : Integer := 3;
4+
begin
5+
pragma Assert (My_Pack.G (I) = 3);
6+
end Main;
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
with Gen_Pack;
2+
-- Test library-level generic instantiation.
3+
package My_Pack is new Gen_Pack (Integer);
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
[main.assertion.1] line 5 assertion My_Pack.G (I) = 3: SUCCESS
2+
VERIFICATION SUCCESSFUL
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
from test_support import *
2+
3+
prove(main='main.adb', specs=['my_pack.ads'])

0 commit comments

Comments
 (0)