--TEST--
Bug #38047 ("file" and "line" sometimes not set in backtrace from inside error handler)
--FILE--
<?php
error_reporting
(E_ALL);
set_error_handler('kalus_error_handler');
ini_set("display_errors""on");

class 
{
  function 
A_ftk($a) {
  }
}

function 
kalus_error_handler($error_code$error_string$filename$line$symbols) {
  echo 
"$error_string\n";
  
get_error_context();
}

function 
get_error_context() {
  
$backtrace debug_backtrace();
  
$n 1;
  foreach (
$backtrace as $call) {
      echo 
$n++." ";
      if (isset(
$call["file"])) {
          echo 
$call["file"];
          if (isset(
$call["line"])) {
              echo 
":".$call["line"];
          }
      }
      if (isset(
$call["function"])) {
          echo 
" ".$call["function"]."()";
      }
      echo 
"\n";
  }
  echo 
"\n";
}

//This will not create file and line items for the call into the error handler
$page["name"] = A::A_ftk();
?>
--EXPECTF--
Non-static method A::A_ftk() should not be called statically
1 %sbug38047.php:13 get_error_context()
2 %sbug38047.php:36 kalus_error_handler()
3 %sbug38047.php:36 A_ftk()

Missing argument 1 for A::A_ftk(), called in %sbug38047.php on line 36 and defined
1 %sbug38047.php:13 get_error_context()
2 %sbug38047.php:7 kalus_error_handler()
3 %sbug38047.php:36 A_ftk()