summaryrefslogtreecommitdiff
path: root/Zend/tests
diff options
context:
space:
mode:
authorNikita Popov <nikita.ppv@gmail.com>2020-10-05 15:23:31 +0200
committerNikita Popov <nikita.ppv@gmail.com>2020-10-05 15:24:51 +0200
commit6ea870f5fb94c251cf201fb2955a93ba70edaa89 (patch)
treea6d3caeedbd8cb717863a4bac1017dd19416af45 /Zend/tests
parent4982964224c0a1ba19c8c87931442483693b83ea (diff)
downloadphp-git-6ea870f5fb94c251cf201fb2955a93ba70edaa89.tar.gz
Fix bug #80184
Diffstat (limited to 'Zend/tests')
-rw-r--r--Zend/tests/bug80184.phpt20
1 files changed, 20 insertions, 0 deletions
diff --git a/Zend/tests/bug80184.phpt b/Zend/tests/bug80184.phpt
new file mode 100644
index 0000000000..1d12799f0c
--- /dev/null
+++ b/Zend/tests/bug80184.phpt
@@ -0,0 +1,20 @@
+--TEST--
+Bug #80184: Complex expression in while / if statements resolves to false incorrectly
+--FILE--
+<?php
+
+$callbacks = [
+ function () { echo "First item!\n"; },
+ function () { echo "Second item!\n"; },
+ function () { echo "Third item!\n"; },
+ function () { echo "Fourth item!\n"; },
+];
+
+while ($callback = array_shift($callbacks) and ($callback() || true));
+
+?>
+--EXPECT--
+First item!
+Second item!
+Third item!
+Fourth item!