summaryrefslogtreecommitdiff
path: root/tests/classes/ctor_in_interface_02.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'tests/classes/ctor_in_interface_02.phpt')
-rw-r--r--tests/classes/ctor_in_interface_02.phpt34
1 files changed, 34 insertions, 0 deletions
diff --git a/tests/classes/ctor_in_interface_02.phpt b/tests/classes/ctor_in_interface_02.phpt
new file mode 100644
index 0000000..08e6f36
--- /dev/null
+++ b/tests/classes/ctor_in_interface_02.phpt
@@ -0,0 +1,34 @@
+--TEST--
+ZE2 A class constructor must keep the signature of all interfaces
+--FILE--
+<?php
+interface constr1
+{
+ function __construct();
+}
+
+interface constr2 extends constr1
+{
+}
+
+class implem12 implements constr2
+{
+ function __construct()
+ {
+ }
+}
+
+interface constr3
+{
+ function __construct($a);
+}
+
+class implem13 implements constr1, constr3
+{
+ function __construct()
+ {
+ }
+}
+?>
+--EXPECTF--
+Fatal error: Declaration of implem13::__construct() must be compatible with constr3::__construct($a) in %s on line %d