xref: /PHP-7.3/Zend/tests/bug29368.phpt (revision ded3d984)
1--TEST--
2Bug #29368 (The destructor is called when an exception is thrown from the constructor)
3--FILE--
4<?php
5
6class Foo
7{
8	function __construct()
9	{
10		echo __METHOD__ . "\n";
11		throw new Exception;
12	}
13	function __destruct()
14	{
15		echo __METHOD__ . "\n";
16	}
17}
18
19try
20{
21	$bar = new Foo;
22} catch(Exception $exc)
23{
24	echo "Caught exception!\n";
25}
26
27unset($bar);
28
29?>
30===DONE===
31--EXPECT--
32Foo::__construct
33Caught exception!
34===DONE===
35