public static function findCallPos(\Throwable $t, string &$filePath = null, int &$lineNo = null) {
		if (!($t instanceof \TypeError || $t instanceof  WarningError || $t instanceof  RecoverableError)) {
			return;
		}

		$message = $t->getMessage();
		if (false !== strpos($message, '{closure}')) {
			return;
		}
	
		$fmatches = array();
		$lmatches = array();
		if (preg_match('/(?<=called in )[^ \(]+/', $message, $fmatches)
				&& preg_match('/((?<=on line )|(?<=\())[0-9]+/', $message, $lmatches)) {
			$filePath = $fmatches[0];
			$lineNo = $lmatches[0];
		}
		
		$fmatches = array();
		$lmatches = array();
		if (preg_match('/(?<=passed in )[^ \(]+/', $message, $fmatches)
				&& preg_match('/((?<=on line )|(?<=\())[0-9]+/', $message, $lmatches)) {
			$filePath = $fmatches[0];
			$lineNo = $lmatches[0];
		}
	}