summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gnat.dg/subp_elim_errors.adb
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gnat.dg/subp_elim_errors.adb')
-rw-r--r--gcc/testsuite/gnat.dg/subp_elim_errors.adb32
1 files changed, 32 insertions, 0 deletions
diff --git a/gcc/testsuite/gnat.dg/subp_elim_errors.adb b/gcc/testsuite/gnat.dg/subp_elim_errors.adb
new file mode 100644
index 000000000..669e87721
--- /dev/null
+++ b/gcc/testsuite/gnat.dg/subp_elim_errors.adb
@@ -0,0 +1,32 @@
+-- [ dg-do compile }
+
+with System;
+
+package body Subp_Elim_Errors is
+
+ type Acc_Proc is access procedure;
+
+ procedure Proc is
+ begin
+ null;
+ end Proc;
+
+ procedure Pass_Proc (P : Acc_Proc) is
+ begin
+ P.all;
+ end Pass_Proc;
+
+ procedure Pass_Proc (P : System.Address) is
+ begin
+ null;
+ end Pass_Proc;
+
+begin
+ Proc; -- { dg-error "eliminated" }
+
+ Pass_Proc (Proc'Access); -- { dg-error "eliminated" }
+
+ Pass_Proc (Proc'Address); -- { dg-error "eliminated" }
+
+ Pass_Proc (Proc'Code_Address); -- { dg-error "eliminated" }
+end Subp_Elim_Errors;