LoginSignup
4
4

More than 5 years have passed since last update.

PHP5でsegmentation faultが発生するバグ

Last updated at Posted at 2015-06-02

php-src のmasterのログを見ていたら今日こんなバグ修正が入っていました。

今日(2015/6/2)コミットされていたので、現時点で世の中で出回ってる全てのPHPインタープリタにはこのバグがあるかと思われます。

再現方法

<?php
class wpq {
    private $unreferenced;

    public function __get($name) {
        return $this->$name . "XXX";
    }
}

function ret_assoc() {
    $x = "XXX";
    return array('foo' => 'bar', $x);
}

$wpq = new wpq;
$wpq->interesting =& ret_assoc();
$x = $wpq->interesting;
printf("%s\n", $x);

これを実行するとsegmentation faultがおきます。

$  /usr/bin/php ~/php/a.php
[1]    787 segmentation fault  /usr/bin/php ~/php/a.php

手元のPHP5.5.20, PHP5.6.9で確かに再現しました。

特に真新しい機能を使ってるわけでもなく、PHP5.1あたりでも動きそうな何の変哲もないコードなのに、こんなとこでsegmentation faultが発生したりするんですね。
興味深い。

次のパッチリリースで直っていることでしょう。

4
4
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4