summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Zend/tests/bug34310.phpt34
1 files changed, 34 insertions, 0 deletions
diff --git a/Zend/tests/bug34310.phpt b/Zend/tests/bug34310.phpt
new file mode 100644
index 0000000000..2f7c477149
--- /dev/null
+++ b/Zend/tests/bug34310.phpt
@@ -0,0 +1,34 @@
+--TEST--
+Bug #34310 (foreach($arr as $c->d => $x) crashes)
+--FILE--
+<?php
+
+class C
+{
+ var $d;
+}
+
+$c = new C();
+
+$arr = array (1 => 'a', 2 => 'b', 3 => 'c');
+
+// Works fine:
+foreach($arr as $x => $c->d)
+{
+ echo "{$x} => {$c->d}\n";
+}
+
+// Crashes:
+foreach($arr as $c->d => $x)
+{
+ echo "{$c->d} => {$x}\n";
+}
+
+?>
+--EXPECT--
+1 => a
+2 => b
+3 => c
+1 => a
+2 => b
+3 => c