xref: /PHP-8.0/Zend/tests/bug29368.phpt (revision f8d79582)
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--EXPECT--
31Foo::__construct
32Caught exception!
33