php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #75588 Segmentation fault with recursive class constant definition
Submitted: 2017-11-29 10:51 UTC Modified: 2018-05-05 21:49 UTC
From: diacomltd at mail dot ru Assigned:
Status: No Feedback Package: Scripting Engine problem
PHP Version: 7.1.12 OS: any
Private report: No CVE-ID: None
Welcome back! If you're the original bug submitter, here's where you can edit the bug or add additional notes.
If you forgot your password, you can retrieve your password here.
Password:
Status:
Package:
Bug Type:
Summary:
From: diacomltd at mail dot ru
New email:
PHP Version: OS:

 

 [2017-11-29 10:51 UTC] diacomltd at mail dot ru
Description:
------------
PHP interpreter stops with segmentation fault when it comes into recursive class constant definition.

Test script:
---------------
<?php

class SomeConstants
{   
	const RECURSIVE_CONSTANT = self::RECURSIVE_CONSTANT;
}

Expected result:
----------------
It would be better if PHP interpreter stopped with helpful error message about recursive definition.

Actual result:
--------------
Nov 28 19:04:00 homestead kernel: [  194.868150] traps: php-fpm7.1[2753] general protection ip:565383b93854 sp:7fffcdf87b30 error:0 in php-fpm7.1[565383958000+3cf000]


Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2017-11-29 11:03 UTC] nikic@php.net
-Status: Open +Status: Feedback
 [2017-11-29 11:03 UTC] nikic@php.net
This throws an exception in all recent versions of PHP: https://3v4l.org/caUW0

Also, the code as you wrote it will never even start to recurse, as the constant is never used.

Can you please double-check that there is no additional code required to trigger the crash? Also, can you try running using "php -n" to check whether an extension is responsible for the different behavior?
 [2018-05-05 21:49 UTC] requinix@php.net
-Status: Feedback +Status: No Feedback
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Thu Dec 26 19:01:30 2024 UTC