Bug #13616 Updated: Compiler complains about function declaration after return is called

From: Date: Fri, 12 Oct 2001 00:20:06 +0000
Subject: Bug #13616 Updated: Compiler complains about function declaration after return is called
References: 1  Groups: php.dev 
Request: Send a blank email to php-dev+get-67824@lists.php.net to get a copy of this message
ID: 13616 Updated by: ssb Reported By: brianm@dealnews.com Status: Critical Bug Type: Scripting Engine problem Operating System: Linux PHP Version: 4.0CVS-2001-10-09 New Comment: Example can be reduced to: test.php: <?php function foo() {} include "test2.php"; ?> test2.php: <?php return; function foo() {} ?> Previous Comments: ------------------------------------------------------------------------ [2001-10-10 14:40:32] sander@php.net Reproduced with latest dev from php4win.com (04-Oct-2001). ------------------------------------------------------------------------ [2001-10-10 02:31:17] derick@php.net Marking as fix before release ------------------------------------------------------------------------ [2001-10-09 13:57:28] sander@php.net Reclassified. ------------------------------------------------------------------------ [2001-10-09 13:09:15] brianm@dealnews.com We have been using code like this for a long time: test.php: <?php include "test2.php"; include "test3.php"; foo(); bar(); ?> test2.php: <?php if(defined("_TEST2")) return; define("_TEST2", true); function foo(){ echo "foo\n"; } ?> test3.php <?php if(defined("_TEST3")) return; define("_TEST3", true); include "test2.php"; function bar(){ echo "bar\n"; } ?> With 4.0.6 we get: ------------------- $ php test.php X-Powered-By: PHP/4.0.6RC4 Content-type: text/html foo bar With current dev we get: ------------------------ $ ./php test.php X-Powered-By: PHP/4.0.8-dev Content-type: text/html Fatal error: Cannot redeclare foo() (previously declared in /home/brianm/test2.php:6) in /home/brianm/test2.php on line 7 ------------------------------------------------------------------------ Edit this bug report at http://bugs.php.net/?id=13616&edit=1

« previous php.dev (#67824) next »