<NME> conftest.py <BEF> import py from _pytest.main import Collector, Item import os import sys import re import locale from collections import OrderedDict from hippy.hippyoption import ( enable_all_optional_extensions, is_optional_extension_enabled) enable_all_optional_extensions() from hippy.config import load_ini if __name__ == '__main__': sys.path.insert( 0, os.path.dirname( os.path.dirname( os.path.dirname(os.path.abspath(__file__))))) from prettytable import PrettyTable from hippy.objspace import ObjSpace from hippy.constants import E_HIPPY_WARN from hippy.interpreter import Interpreter from hippy.error import ExplicitExitException, FatalError from hippy.objects.instanceobject import global_counter from hippy.module.session.session import Session from urlparse import parse_qs from hippy.objects.reference import W_Reference slow = "SKIP: Too slow!" check_sign_only = "check_sign_only" WIDTH = os.environ.get("COLUMNS", 300) COL_WIDTH = int(WIDTH) / 2 - 5 IS_TRAVIS = os.getenv('TRAVIS') == 'true' def parse_phpt(fname): skipif_src = [] ini_section = [] src = [] exp = [] tname = None request = {} clean = [] st = None IGNORED = 999 state = {'TEST': -1, 'FILE': 0, 'FILEEOF': 0, 'EXPECT': 1, 'EXPECTF': 1, 'SKIPIF': 5, 'INI': 2, 'CLEAN': 3, 'CREDITS': IGNORED, 'CREDIT': IGNORED, 'GET': 6, 'POST': 7, 'COOKIE': 8, 'XFAIL': 9, 'DESCRIPTION': IGNORED} with open(fname) as f: lines = f.readlines() for l in lines: m = re.match('--([A-Z_]+)--$', l.strip()) if m: section = m.group(1) try: st = state[section] continue except KeyError: if section in ['EXPECTREGEX', 'POST_RAW', 'ENV', 'ARGS']: py.test.skip("Section %s not handled" % section) else: raise ValueError('Unknown phpt section header: %s' % section) if st == -1 and tname is None: tname = l.strip() elif st == 0: src.append(l) elif st == 5: skipif_src.append(l) elif st == 1: # XXX: Hack! l = re.sub("on line \d+$", "on line %d", l) exp.append(l) elif st == 2: ini_section.append(l) elif st == 3: clean.append(l) elif st == 6: l = l.strip() request['_GET'] = parse_qs(l) elif st == 7: l = l.strip() request['_POST'] = parse_qs(l) elif st == 8: l = l.strip() request['_COOKIE'] = parse_qs(l) elif st == 9: py.test.skip("PHP XFAIL: %s" % l) return (tname, "".join(skipif_src), "".join(src), [l for l in exp if l.strip() != ""], "\n".join(ini_section), " ".join(clean), request) class MockStdout(object): def __init__(self): self._lines = [] self._buffer = [] def __iter__(self): return iter(self._lines) def __getitem__(self, n): return self._lines[n] def flush(self): _s = "".join(self._buffer) self._lines.append(_s) self._buffer = [] def append(self, str): if str: if str[-1] != '\n': self._buffer.append(str) else: self._buffer.append(str) self.flush() class MockInterpreter(Interpreter): """ Like the interpreter, but captures stdout """ def __init__(self, space, output): Interpreter.__init__(self, space) self.output = output global_counter.instance_counter = 1 def _writestr(self, string): self.output.append(string) def err_write(self, string): self.writestr('\n' + string) def _log_traceback(self, filename, funcname, line, source): pass def hippy_warn(self, msg): if msg.startswith('printf(): Unknown format char'): # py.test.skip('Missing features in printf()') pass def log_error(self, level, msg): if level != E_HIPPY_WARN: Interpreter.log_error(self, level, msg) class PhptRunner(object): def __init__(self, ini, filename, request): self.filename = filename self.request = request self.ini = ini def prepare_globals(self, space, interp): globals = interp.globals for var, values in self.request.items(): rdict_w = OrderedDict() for k, v in values.items(): rdict_w[k] = space.wrap(v[0]) globals.set_var(var, W_Reference(space.new_array_from_rdict(rdict_w))) def run(self, _source): self.space = ObjSpace() stdout = MockStdout() interp = MockInterpreter(self.space, stdout) load_ini(interp, self.ini) interp.setup(cgi=False, argv=[self.filename]) interp.session = Session(interp) try: bc = interp.compile_bytecode(self.filename, _source) if bc is not None: interp.cached_files[self.filename] = bc interp.run_main(self.space, bc, top_main=True) except FatalError: pass except ExplicitExitException as exc: stdout.flush() stdout.append(exc.message) stdout.flush() return stdout def matches_line(php, hippy, check_sign_only=False): if php.startswith("%r"): return re.match(php.replace("%r", ""), hippy) if check_sign_only: if re.match('int\(\d+\)', php): return re.match('int\(\d+\)', hippy) if re.match('int\(-\d+\)', php): return re.match('int\(-\d+\)', hippy) if '%' not in php: return php == hippy php = php.replace("%unicode|string%", "string") php = php.replace("%string|unicode%", "string") php = php.replace("%unicode_string_optional%", "string") php = php.replace("%binary_string_optional%", "string") php = php.replace("%u|b%", "") rphp = re.escape(php) rphp = rphp.replace('\%e', '.*') rphp = rphp.replace('\%x', '[0-9a-fA-F]+') rphp = rphp.replace('\%s', '.*') rphp = rphp.replace('\%a', '.*') rphp = rphp.replace('\%f', '.*') rphp = rphp.replace('\%d', '\d+') rphp = rphp.replace('\%i', '.*') return re.match(rphp, hippy) TEST_DIR = os.path.dirname(__file__) basic_test_dir = 'basic' classes_test_dir = 'classes' func_test_dir = 'func' lang_test_dir = 'lang' operators_test_dir = 'lang/operators' output_test_dir = 'output' runtest_test_dir = 'run-test' security_test_dir = 'security' strings_test_dir = 'strings' array_test_dir = 'ext/standard/array' class_object_test_dir = 'ext/standard/class_object' string_test_dir = 'ext/standard/strings' streams_test_dir = 'ext/standard/streams' math_test_dir = 'ext/standard/math' file_test_dir = 'ext/standard/file' dir_test_dir = 'ext/standard/dir' posix_test_dir = 'ext/posix' general_test_dir = 'ext/standard/general_functions' network_test_dir = 'ext/standard/network' url_test_dir = 'ext/standard/url' mysql_test_dir = 'ext/mysql' session_test_dir = 'ext/session' serialize_test_dir = 'ext/standard/serialize' date_test_dir = 'ext/standard/date' ctype_test_dir = 'ext/ctype' pcre_test_dir = 'ext/pcre' hash_test_dir = 'ext/hash' spl_test_dir = 'ext/spl' Zend_test_dir = 'Zend' mcrypt_test_dir = 'ext/mcrypt' os.environ["MYSQL_TEST_HOST"] = "localhost" os.environ["MYSQL_TEST_USER"] = "root" os.environ["MYSQL_TEST_PASSWD"] = "root" os.environ["MYSQL_TEST_PORT"] = "3306" markers = {} # ARRAY markers[array_test_dir] = { 'bug41121.phpt': "int/float mix", 'bug31158.phpt': "do not understand it right now..", 'array_sum.phpt': slow, '002.phpt': "T_LIST parser problem", '007.phpt': "?", '008.phpt': "?", 'bug24766.phpt': "missing debug_zval_dump", 'bug25708.phpt': "missing debug_zval_dump", 'bug26458.phpt': "missing debug_zval_dump", 'bug35821.phpt': "not implemented error", 'bug36975.phpt': "PHP quirk behavior", 'bug45312.phpt': "not implemented error", 'bug61730.phpt': "unexpected 'T_USE'", 'array_diff_uassoc_variation5.phpt': "doesnt work properly", 'array_diff_uassoc_variation6.phpt': "doesnt work properly", 'array_diff_uassoc_variation8.phpt': "doesnt work properly", 'array_diff_ukey_variation9.phpt': "doesnt work properly", 'array_diff_variation5.phpt': "doesnt work properly", 'array_diff_variation9.phpt': "doesnt work properly", 'array_fill_object_2_4.phpt': "order of class members", 'array_filter_variation7.phpt': "missing create_function()", 'array_intersect_assoc_variation9.phpt': 'too many notices', 'array_intersect_variation4.phpt': "doesnt work properly", 'array_intersect_variation8.phpt': "wrong order of elems", 'array_intersect_variation9.phpt': "doesnt work properly", 'array_key_exists_object1.phpt': ("var_dump format is different and one key" "is reported as missing"), 'array_key_exists_object2.phpt': "var_dump format is different", 'array_keys_variation_002.phpt': "doesnt work prop", 'array_keys_variation_003.phpt': "doesnt work prop", 'array_keys_variation_004.phpt': "doesnt work prop", 'array_map_001.phpt': "missing (useless) warning", 'array_map_object1.phpt': "missing strict", 'array_map_object2.phpt': "wording of warning", 'array_map_variation10.phpt': "missing create_function()", 'array_multisort_variation7.phpt': "SORT_REGULAR is not a meaningful ordering", 'array_multisort_variation8.phpt': "Fatal error should Catchable", 'array_multisort_variation9.phpt': "algorithm details are different", 'array_next_error2.phpt': "Argument 1 for next() must be a variable", 'array_pad_variation2.phpt': "arg parse problem", 'array_product_variation1.phpt': "instance unimplemented as_number", 'array_product_variation4.phpt': "?", 'array_push_error2.phpt': "XXX push item in array having key = sys.maxint should fail", 'array_replace.phpt': "?", 'array_search1.phpt': "?", 'array_search_variation2.phpt': "?", 'array_shift_variation8.phpt': "?", 'array_sum_variation7.phpt': "?", 'array_udiff_assoc_basic.phpt': "?", 'array_udiff_assoc_variation.phpt': "?", 'array_udiff_assoc_variation3.phpt': "?", 'array_udiff_assoc_variation5.phpt': "?", 'array_udiff_basic.phpt': "?", 'array_udiff_uassoc_basic.phpt': "?", 'array_uintersect_assoc_variation2.phpt': "?", 'array_uintersect_assoc_variation4.phpt': "?", 'array_uintersect_assoc_variation5.phpt': "?", 'array_uintersect_variation5.phpt': "missing one warning", 'array_uintersect_uassoc_variation6.phpt': "missing one warning", 'array_uintersect_variation3.phpt': "?", 'array_unique_variation2.phpt': "?", 'array_unique_variation8.phpt': "too many warnings?", 'array_walk_object1.phpt': "?", 'array_walk_objects.phpt': "?", 'array_walk_variation7.phpt': "?", 'array_walk_rec_objects.phpt': "?", 'array_walk_recursive_object1.phpt': "?", 'array_walk_recursive_variation7.phpt': "?", 'arsort_basic.phpt': "wrong order of elems", 'arsort_variation2.phpt': "wrong order of elems", 'arsort_variation11.phpt': "wrong order of elems", 'arsort_variation5.phpt': "wrong order of elems", 'asort_variation2.phpt': "wrong order of elems", 'asort_variation11.phpt': "wrong order of elems", 'asort_variation3.phpt': "wrong order of elems", 'asort_variation7.phpt': "wrong order of elems", 'asort_variation9.phpt': "wrong order of elems", 'bug28739.phpt': "?", 'bug29493.phpt': "?", 'bug30074.phpt': "?", 'bug31213.phpt': "?", 'bug32021.phpt': "?", 'bug33940.phpt': "?", 'bug42177.phpt': "?", 'bug42233.phpt': "?", 'bug43495.phpt': "?", 'bug44181.phpt': "?", 'bug44182.phpt': "?", 'bug48224.phpt': "?", 'bug50006.phpt': "?", 'bug50006_1.phpt': "?", 'bug50006_2.phpt': "?", 'compact.phpt': "SKIP: parse error in ini", 'compact_variation1.phpt': "SKIP: parse error in INI", 'each.phpt': "doesnt work properly", 'extract_variation10.phpt': "?", 'extract_variation11.phpt': "?", 'extract_variation6.phpt': "?", 'extract_safety.phpt': "missing debug_zval_dump()", 'extract_variation1.phpt': "missing debug_zval_dump()", 'extract_variation9.phpt': " missing get_object_vars()", 'krsort_basic.phpt': "wrong order of elems", 'krsort_variation2.phpt': "wrong order of elems", 'ksort_variation2.phpt': "wrong order of elems", 'ksort_variation8.phpt': "wrong odred of elems", 'ksort_variation9.phpt': "wrong order of elems", 'locale_sort.phpt': 'Xfail: requires the locale fr_FR.ISO-8859-1 to be available', 'prev_error3.phpt': "FatalError: Argument 1 for prev() must be a variable", 'range_variation.phpt': "parser problem", 'rsort_basic.phpt': "wrong order of elems", 'rsort_variation2.phpt': "wrong order of elems", 'rsort_variation11.phpt': "wrong order of elems", 'sort_variation2.phpt': "wrong order of elems", 'sort_variation11.phpt': "?", 'sort_variation9.phpt': "?", 'uasort_basic2.phpt': "?", 'uasort_object1.phpt': "?", 'uasort_object2.phpt': "?", 'uasort_variation11.phpt': "?", 'uasort_variation6.phpt': "?", 'usort_variation6.phpt': "?", 'uksort_variation1.phpt': "arg check order problem", 'range_variation1.phpt': "in/float mix", 'rsort_variation3.phpt': "in/float mix", 'usort_variation7.phpt': "missing create_function()", 'uasort_variation7.phpt': "missing create_function()", 'unexpected_array_mod_bug.phpt': "dont now how to find if w_arr was modified", } markers[class_object_test_dir] = { 'get_class_error_001.phpt': "bad return value on failures", 'get_class_vars_variation2.phpt': "undefined get_class_vars()", 'get_declared_classes_basic_001.phpt': "works, problem with %s regexp in output", 'get_declared_interfaces_basic_001.phpt': "works, problem with %s regexp in output", 'get_declared_traits_basic_001.phpt': "unexpected T_STRING", 'get_declared_traits_error_001.phpt': "undefined function get_declared_traits()", 'get_declared_traits_variation1.phpt': "unexpected T_USE", 'trait_class_exists_variation_003.phpt': "undefined function trait_exists()", 'trait_exists_basic_001.phpt': "unexpected T_STRING", 'trait_exists_error_001.phpt': "undefined function trait_exists()", 'trait_exists_variation_001.phpt': "undefined function trait_exists()", 'trait_exists_variation_002.phpt': "undefined function trait_exists()", } # MATH markers[math_test_dir] = { "bug28228.phpt": "bullshit NULL as string arg", 'bug45712.phpt': "the test is wrong (asks for inf != inf)", 'tan_basiclong_64bit.phpt': 'Xfail: It produces a different result on Travis', } # DIR markers[dir_test_dir] = { 'opendir_variation2.phpt': "args problem", 'closedir_variation1.phpt': "args problem", 'rewinddir_variation1.phpt': "args problem", 'readdir_variation1.phpt': "args problem", } # FILE markers[file_test_dir] = { 'bug26615.phpt': 'SKIP: requires TEST_PHP_EXECUTABLE in env', 'bug26938.phpt': 'SKIP: requires TEST_PHP_EXECUTABLE in env', '001.phpt': "?", '004.phpt': "missing mkd5_file()", 'bug12556.phpt': "?", 'bug22382.phpt': "?", 'bug26003.phpt': "?", 'bug43353.phpt': "nightmare...", 'bug45303.phpt': "nightmare...", 'bug45303.phpt': "nightmare...", 'bug52624.phpt': "nightmare...", 'bug22414.phpt': "missing md5_file()", 'bug27508.phpt': "missing stream_wrapper_register()", 'bug27619.phpt': "?", 'bug30362.phpt': "missing stream_get_line()", 'bug35781.phpt': "missing stream_filter_append()", 'bug37158.phpt': "missing stream_wrapper_register()", 'bug38086.phpt': "missing stream_filter_append()", 'bug38450.phpt': "missing stream_wrapper_register()", 'bug38450_1.phpt': "missing stream_wrapper_register()", 'bug38450_2.phpt': "T_THROW missing", 'bug38450_3.phpt': "missing stream_wrapper_register()", 'bug39551.phpt': "missing stream_bucket_new()", 'bug39538.phpt': "?", 'bug43008.phpt': "missing urlencode()", 'bug43216.phpt': "missing stream_is_local()", 'bug43522.phpt': "missing stream_get_line()", 'bug44607.phpt': "missing stream_get_line()", 'bug46347.phpt': "missing parse_ini_file()", 'bug40501.phpt': "?", 'bug41655_1.phpt': "glob problem", 'bug44034.phpt': "?", 'bug51094.phpt': "missing parse_ini_string()", 'bug53241.phpt': "missing curl_init()", 'bug53848.phpt': "?", 'bug63512.phpt': "missing parse_ini_string()", 'directory_wrapper_fstat_basic.phpt': "?", 'clearstatcache_001.phpt': "?", 'copy_variation4.phpt': "imo whole expect is wrong", 'copy_variation3.phpt': "imo whole expect is wrong", 'fgetc_variation1.phpt': "compile None", 'php_fd_wrapper_03.phpt': "HW: creating array_from empty...", 'fopen_variation14.phpt': "remote host file access..?", 'fopen_variation15.phpt': "remote host file access..?", 'fgetcsv.phpt': "not implemented", 'fgetcsv_error.phpt': "not implemented", 'fgetcsv_variation1.phpt': "not implemented", 'fgetcsv_variation2.phpt': "not implemented", 'fgetcsv_variation3.phpt': "not implemented", 'fgetcsv_variation4.phpt': "not implemented", 'fgetcsv_variation5.phpt': "not implemented", 'fgetcsv_variation6.phpt': "not implemented", 'fgetcsv_variation7.phpt': "not implemented", 'fgetcsv_variation8.phpt': "not implemented", 'fgetcsv_variation9.phpt': "not implemented", 'fgetcsv_variation10.phpt': "not implemented", 'fgetcsv_variation11.phpt': "not implemented", 'fgetcsv_variation12.phpt': "not implemented", 'fgetcsv_variation13.phpt': "not implemented", 'fgetcsv_variation14.phpt': "not implemented", 'fgetcsv_variation15.phpt': "not implemented", 'fgetcsv_variation16.phpt': "not implemented", 'fgetcsv_variation17.phpt': "not implemented", 'fgetcsv_variation18.phpt': "not implemented", 'fgetcsv_variation19.phpt': "not implemented", 'fgetcsv_variation20.phpt': "not implemented", 'fgetcsv_variation21.phpt': "not implemented", 'fgetcsv_variation22.phpt': "not implemented", 'fgetcsv_variation23.phpt': "not implemented", 'fgetcsv_variation24.phpt': "not implemented", 'fgetcsv_variation25.phpt': "not implemented", 'fgetcsv_variation26.phpt': "not implemented", 'fgetcsv_variation27.phpt': "not implemented", 'fgetcsv_variation28.phpt': "not implemented", 'fgetcsv_variation29.phpt': "not implemented", 'fgetcsv_variation30.phpt': "not implemented", 'fgetcsv_variation31.phpt': "not implemented", 'fgets_socket_variation2.phpt': "error binding", 'fgetss.phpt': "not implemented", 'fgetss1.phpt': "not implemented", 'fgetss_basic1.phpt': "not implemented", 'fgetss_basic2.phpt': "not implemented", 'fgetss_error.phpt': "not implemented", 'fgetss_variation1.phpt': "not implemented", 'fgetss_variation4.phpt': "not implemented", 'fgetss_variation5.phpt': "not implemented", 'file_get_contents_error.phpt': "invalid maxlength", 'file_get_contents_error001.phpt': "http:// protocol", 'file_get_contents_error002.phpt': "?", 'file_put_contents_variation2.phpt': "?", 'file_variation.phpt': "?", 'flock.phpt': "missing flock()", 'flock_basic.phpt': "missing flock()", 'flock_error.phpt': "missing flock()", 'flock_variation.phpt': "missing flock()", 'fopencookie.phpt': "missing stream_wrapper_register()", 'fflush_variation3.phpt': "?", 'fopen_variation5.phpt': "hmm", 'fopen_variation8.phpt': "hmm", 'fputcsv_002.phpt': "not implemented", 'fputcsv_error.phpt': "not implemented", 'fputcsv.phpt': "not implemented", 'fputcsv_variation10.phpt': "not implemented", 'fputcsv_variation11.phpt': "not implemented", 'fputcsv_variation12.phpt': "not implemented", 'fputcsv_variation13.phpt': "not implemented", 'fputcsv_variation14.phpt': "not implemented", 'fputcsv_variation1.phpt': "not implemented", 'fputcsv_variation2.phpt': "not implemented", 'fputcsv_variation3.phpt': "not implemented", 'fputcsv_variation4.phpt': "not implemented", 'fputcsv_variation5.phpt': "not implemented", 'fputcsv_variation6.phpt': "not implemented", 'fputcsv_variation7.phpt': "not implemented", 'fputcsv_variation8.phpt': "not implemented", 'fputcsv_variation9.phpt': "not implemented", 'fscanf.phpt': "not implemented", 'fscanf_error.phpt': "not implemented", 'fscanf_variation10.phpt': "not implemented", 'fscanf_variation11.phpt': "not implemented", 'fscanf_variation12.phpt': "not implemented", 'fscanf_variation13.phpt': "not implemented", 'fscanf_variation14.phpt': "not implemented", 'fscanf_variation15.phpt': "not implemented", 'fscanf_variation16.phpt': "not implemented", 'fscanf_variation17.phpt': "not implemented", 'fscanf_variation18.phpt': "not implemented", 'fscanf_variation19.phpt': "not implemented", 'fscanf_variation1.phpt': "not implemented", 'fscanf_variation20.phpt': "not implemented", 'fscanf_variation21.phpt': "not implemented", 'fscanf_variation22.phpt': "not implemented", 'fscanf_variation23.phpt': "not implemented", 'fscanf_variation24.phpt': "not implemented", 'fscanf_variation25.phpt': "not implemented", 'fscanf_variation26.phpt': "not implemented", 'fscanf_variation27.phpt': "not implemented", 'fscanf_variation28.phpt': "not implemented", 'fscanf_variation29.phpt': "not implemented", 'fscanf_variation2.phpt': "not implemented", 'fscanf_variation30.phpt': "not implemented", 'fscanf_variation31.phpt': "not implemented", 'fscanf_variation32.phpt': "not implemented", 'fscanf_variation33.phpt': "not implemented", 'fscanf_variation34.phpt': "not implemented", 'fscanf_variation35.phpt': "not implemented", 'fscanf_variation36.phpt': "not implemented", 'fscanf_variation37.phpt': "not implemented", 'fscanf_variation38.phpt': "not implemented", 'fscanf_variation39.phpt': "not implemented", 'fscanf_variation3.phpt': "not implemented", 'fscanf_variation40.phpt': "not implemented", 'fscanf_variation41.phpt': "not implemented", 'fscanf_variation42.phpt': "not implemented", 'fscanf_variation43.phpt': "not implemented", 'fscanf_variation44.phpt': "not implemented", 'fscanf_variation45.phpt': "not implemented", 'fscanf_variation46.phpt': "not implemented", 'fscanf_variation47.phpt': "not implemented", 'fscanf_variation48.phpt': "not implemented", 'fscanf_variation49.phpt': "not implemented", 'fscanf_variation4.phpt': "not implemented", 'fscanf_variation50.phpt': "not implemented", 'fscanf_variation51.phpt': "not implemented", 'fscanf_variation52.phpt': "not implemented", 'fscanf_variation53.phpt': "not implemented", 'fscanf_variation54.phpt': "not implemented", 'fscanf_variation55.phpt': "not implemented", 'fscanf_variation5.phpt': "not implemented", 'fscanf_variation6.phpt': "not implemented", 'fscanf_variation7.phpt': "not implemented", 'fscanf_variation8.phpt': "not implemented", 'fscanf_variation9.phpt': "not implemented", 'fseek_dir_basic.phpt': "?", 'fwrite_variation5.phpt': "?", 'ftruncate_error.phpt': "fopen creates new empty file...", 'readlink_variation1.phpt': 'warning missmatch', 'include_userstream_001.phpt': "missing stream_register_wrapper()", 'include_userstream_002.phpt': "missing stream_register_wrapper()", 'include_userstream_003.phpt': "missing stream_register_wrapper()", 'include_streams.phpt': "?", 'is_uploaded_file_basic.phpt': "missing is_uploaded_file()", 'lchgrp_basic.phpt': "missing lchgrp()", 'lchown_basic.phpt': "missing lchown()", 'lchown_error.phpt': "missing lchown()", 'lstat_stat_variation4.phpt': "?", 'lstat_stat_variation5.phpt': "?", 'lstat_stat_variation6.phpt': "?", 'move_uploaded_file_basic.phpt': "missing move_uploaded_file()", 'parse_ini_file_error.phpt': "missing parse_ini_file()", 'parse_ini_file.phpt': "missing parse_ini_file()", 'parse_ini_file_variation1.phpt': "missing parse_ini_file()", 'parse_ini_file_variation2.phpt': "missing parse_ini_file()", 'parse_ini_file_variation3.phpt': "missing parse_ini_file()", 'parse_ini_file_variation4.phpt': "missing parse_ini_file()", 'parse_ini_file_variation5.phpt': "missing parse_ini_file()", 'parse_ini_file_variation6.phpt': "missing parse_ini_file()", 'pclose_variation1.phpt': "?", 'php_fd_wrapper_01.phpt': "?", 'php_fd_wrapper_02.phpt': "?", 'php_fd_wrapper_04.phpt': "?", 'popen_pclose_basic.phpt': "?", 'parse_ini_file_variation4.phpt': "?", 'parse_ini_file_variation5.phpt': "?", 'proc_open01.phpt': "?", 'realpath_cache.phpt': "missing realpath_cache_size()", 'readlink_realpath_basic2.phpt': "?", 'readfile_variation3.phpt': "?", 'statpage.phpt': "missing getlastmod()", 'stream_001.phpt': "missing stream_wrapper_unregister()", 'stream_002.phpt': "missing stream_wrapper_unregister()", 'stream_copy_to_stream.phpt': "missing stream_wrapper_unregister()", 'stream_enclosed.phpt': "missing stream_wrapper_unregister()", 'stream_get_line.phpt': "missing stream_wrapper_unregister()", 'stream_supports_lock.phpt': "missing stream_wrapper_unregister()", 'stream_rfc2397_001.phpt': "?", 'stream_rfc2397_002.phpt': "?", 'stream_rfc2397_003.phpt': "?", 'stream_rfc2397_004.phpt': "?", 'stream_rfc2397_005.phpt': "?", 'stream_rfc2397_006.phpt': "?", 'stream_rfc2397_007.phpt': "?", 'symlink_link_linkinfo_is_link_variation3.phpt': "?", 'tempnam_variation2.phpt': "strange....", 'tempnam_variation3.phpt': "how ...", 'tempnam_variation4.phpt': "perms problem", 'touch_basic.phpt': "?", 'userfilters.phpt': "?", 'umask_basic.phpt': "missing umask()", 'umask_error.phpt': "missing umask()", 'umask_variation1.phpt': "missing umask()", 'umask_variation2.phpt': "missing umask()", 'umask_variation3.phpt': "missing umask()", 'userstreams.phpt': "missing stream_wrapper_register()", 'userstreams_002.phpt': "missing stream_wrapper_register()", 'userstreams_003.phpt': "missing stream_wrapper_register()", 'userstreams_004.phpt': "missing stream_wrapper_register()", 'userstreams_005.phpt': "missing stream_wrapper_register()", 'userstreams_006.phpt': "missing stream_wrapper_register()", 'userstreams_007.phpt': "missing stream_wrapper_register()", 'userdirstream.phpt': 'missing stream_wrapper_register()', 'userwrapper.phpt': 'missing stream_wrapper_register()', 'fgetss_variation2.phpt': slow, 'fgetss_variation3.phpt': slow, } if IS_TRAVIS: markers[file_test_dir].update({ 'get_current_user.phpt': 'Fails with OSError: [Errno 25] Inappropriate ioctl for device on Travis', 'fwrite_variation3.phpt': 'On Travis ftell returns incorrectly after writing', 'disk_free_space_basic.phpt': 'Xfail: sometimes fail on Travis', }) # POSIX markers[posix_test_dir] = { 'posix_access.phpt': "Expecting: Deprecated: Directive safe_mode is ...", # Update the tests to PHP 5.4 'posix_access_error_modes.phpt': "Expecting: Deprecated: Directive safe_mode is ...", 'posix_access_safemode.phpt': "Expecting: Deprecated: Directive safe_mode is ...", 'posix_ttyname.phpt': "OSError: [Errno 25] Inappropriate ioctl for device", 'posix_ttyname_variation6.phpt': "Missing: Error: 8 - Object of class classWithToString could not be converted to int", 'posix_getgrgid_basic.phpt': 'Problems with the %a format in the test. Output looks good', 'posix_getgrgid_macosx.phpt': 'Test should be skipped in platforms other than mac', 'posix_ttyname_error_wrongparams.phpt': 'missing imagecreate()', 'posix_mkfifo_safemode.phpt': 'Xfail: On Travis and other setups it is possible to create a fifo in /tmp (probably there is only one user)', } # STRING markers[string_test_dir] = { '004.phpt': "Section EXPECTREGEX not handled", 'bug40754.phpt': check_sign_only, 'bug54454.phpt': check_sign_only, 'chunk_split.phpt': slow, # hangs on 64-bit 'implode.phpt': "$php_errormsg", 'htmlentities22.phpt': "named constant in default args", 'setlocale_error.phpt': ("not implemented: (deprecated) " "category names as strings"), 'setlocale_variation4.phpt': ("expects en_US as " "default system locale"), 'setlocale_variation5.phpt': ("expects en_US as " "default system locale"), 'strncasecmp_variation7.phpt': check_sign_only, 'strncasecmp_variation9.phpt': check_sign_only, 'stripslashes_variation5.phpt': "escape chars", 'strncmp_variation7.phpt': check_sign_only, 'substr_replace_array.phpt': "handles only lists", 'vprintf_error.phpt': "PHP inconsistency", 'vsprintf_error.phpt': "PHP inconsistency", 'wordwrap_error.phpt': ("unimplemented corner " "case when width < 0"), 'wordwrap_variation2.phpt': ("unimplemented corner " "case when width < 0"), 'sprintf_variation52.phpt': 'some problem', '005.phpt': "not implemented", '006.phpt': "not implemented", '007.phpt': "not implemented", 'bug21453.phpt': "not implemented", 'bug21730.phpt': "not implemented", 'bug21744.phpt': "not implemented", 'bug22008.phpt': "not implemented", 'bug23650.phpt': "not implemented", 'bug26817.phpt': "not implemented", 'bug26819.phpt': "not implemented", 'bug27295.phpt': "not implemented", 'bug29075.phpt': "not implemented", 'bug29119.phpt': "not implemented", 'bug37262.phpt': "Call to undefined function create_function()", 'bug38322.phpt': "not implemented", 'bug40432.phpt': "not implemented", 'bug42107.phpt': "not implemented", 'bug44242.phpt': "not implemented", 'bug44703.phpt': "not implemented", 'bug46578.phpt': "not implemented", 'bug47322.phpt': "not implemented", 'bug47443.phpt': "not implemented", 'bug47842.phpt': "not implemented", 'bug48709.phpt': "not implemented", 'bug49785.phpt': "not implemented", 'bug50052.phpt': "not implemented", 'bug50847.phpt': "not implemented", 'bug51059.phpt': "not implemented", 'bug51899.phpt': "not implemented", 'bug53021.phpt': "not implemented", 'bug53319.phpt': "not implemented", 'bug54322.phpt': "not implemented", 'bug54721.phpt': "not implemented", 'bug55674.phpt': "not implemented", 'bug55871.phpt': "not implemented", 'bug62443.phpt': "not implemented", 'convert_cyr_string.phpt': "not implemented", 'convert_cyr_string_basic.phpt': "not implemented", 'convert_cyr_string_error.phpt': "not implemented", 'convert_cyr_string_variation1.phpt': "not implemented", 'crypt.phpt': "not implemented", 'crypt_blowfish.phpt': "not implemented", 'crypt_blowfish_variation1.phpt': "not implemented", 'crypt_blowfish_variation2.phpt': "not implemented", 'crypt_chars.phpt': "not implemented", 'crypt_sha256.phpt': "not implemented", 'crypt_sha512.phpt': "not implemented", 'crypt_variation1.phpt': "not implemented", 'printf_64bit.phpt': 'precision warning XXX', 'get_html_translation_table_basic1.phpt': "not implemented", 'get_html_translation_table_basic10.phpt': "not implemented", 'get_html_translation_table_basic2.phpt': "not implemented", 'get_html_translation_table_basic3.phpt': "not implemented", 'get_html_translation_table_basic4.phpt': "not implemented", 'get_html_translation_table_basic5.phpt': "not implemented", 'get_html_translation_table_basic6.phpt': "not implemented", 'get_html_translation_table_basic7.phpt': "not implemented", 'get_html_translation_table_basic8.phpt': "not implemented", 'get_html_translation_table_basic9.phpt': "not implemented", 'get_html_translation_table_error.phpt': "not implemented", 'get_html_translation_table_variation1.phpt': "not implemented", 'get_html_translation_table_variation2.phpt': "not implemented", 'get_meta_tags.phpt': "not implemented", 'hebrev_basic.phpt': "not implemented", 'hebrev_error.phpt': "not implemented", 'hebrev_variation1.phpt': "not implemented", 'hebrev_variation2.phpt': "not implemented", 'hebrevc_basic.phpt': "not implemented", 'hebrevc_error.phpt': "not implemented", 'hebrevc_variation1.phpt': "not implemented", 'hebrevc_variation2.phpt': "not implemented", 'highlight_file.phpt': "not implemented", 'html_entity_decode1.phpt': "not implemented", 'html_entity_decode3.phpt': "not implemented", 'html_entity_decode_cp866.phpt': "not implemented", 'html_entity_decode_html4.phpt': "not implemented", 'html_entity_decode_html5.phpt': "not implemented", 'html_entity_decode_iso8859-15.phpt': "not implemented", 'html_entity_decode_iso8859-5.phpt': "not implemented", 'html_entity_decode_koi8-r.phpt': "not implemented", 'html_entity_decode_macroman.phpt': "not implemented", 'html_entity_decode_win1251.phpt': "not implemented", 'html_entity_decode_win1252.phpt': "not implemented", 'htmlentities-utf-2.phpt': "not implemented", 'htmlentities-utf-3.phpt': "not implemented", 'htmlentities-utf.phpt': "not implemented", 'htmlentities.phpt': "not implemented", 'htmlentities01.phpt': "not implemented", 'htmlentities02.phpt': "not implemented", 'htmlentities03.phpt': "not implemented", 'htmlentities04.phpt': "not implemented", 'htmlentities05.phpt': "not implemented", 'htmlentities06.phpt': "SKIP: parse error in CLEAN", 'htmlentities07.phpt': "SKIP: parse error in CLEAN", 'htmlentities08.phpt': "not implemented", 'htmlentities09.phpt': "not implemented", 'htmlentities10.phpt': "not implemented", 'htmlentities11.phpt': "SKIP: parse error in CLEAN", 'htmlentities12.phpt': "SKIP: parse error in CLEAN", 'htmlentities13.phpt': "not implemented", 'htmlentities14.phpt': "not implemented", 'htmlentities15.phpt': "not implemented", 'htmlentities16.phpt': "not implemented", 'htmlentities17.phpt': "not implemented", 'htmlentities18.phpt': "not implemented", 'htmlentities19.phpt': "not implemented", 'htmlentities20.phpt': "not implemented", 'htmlentities21.phpt': "not implemented", 'htmlentities23.phpt': "not implemented", 'htmlentities24.phpt': "not implemented", 'htmlentities_html4.phpt': "not implemented", 'htmlentities_html5.phpt': "not implemented", 'http_build_query.phpt': "not implemented", 'http_build_query_error.phpt': "not implemented", 'http_build_query_variation1.phpt': "not implemented", 'http_build_query_variation2.phpt': "not implemented", 'md5_file.phpt': "not implemented", 'metaphone.phpt': "not implemented", 'money_format_basic1.phpt': "not implemented", 'money_format_error.phpt': "not implemented", 'money_format_variation1.phpt': "not implemented", 'money_format_variation2.phpt': "not implemented", 'moneyformat.phpt': "not implemented", 'number_format_error.phpt': "not implemented", 'parse_str_basic1.phpt': "not implemented", 'parse_str_basic2.phpt': "not implemented", 'parse_str_basic3.phpt': "not implemented", 'parse_str_basic4.phpt': "not implemented", 'php_strip_whitespace.phpt': "not implemented", 'sha1.phpt': 'sha1_file not implemented', 'sha1_file.phpt': "not implemented", 'show_source_basic.phpt': "not implemented", 'show_source_variation1.phpt': "not implemented", 'show_source_variation2.phpt': "not implemented", 'similar_text_basic.phpt': "not implemented", 'similar_text_error.phpt': "not implemented", 'sscanf_basic1.phpt': "not implemented", 'sscanf_basic2.phpt': "not implemented", 'sscanf_basic3.phpt': "not implemented", 'sscanf_basic4.phpt': "not implemented", 'sscanf_basic5.phpt': "not implemented", 'sscanf_basic7.phpt': "not implemented", 'sscanf_basic8.phpt': "not implemented", 'sscanf_error.phpt': "not implemented", 'sscanf_variation1.phpt': "not implemented", 'sscanf_variation2.phpt': "not implemented", 'str_getcsv_001.phpt': "not implemented", 'str_word_count.phpt': "not implemented", 'str_word_count1.phpt': "not implemented", 'strip_tags.phpt': "not implemented", 'strip_tags_basic2.phpt': "not implemented", 'strip_tags_variation10.phpt': "not implemented", 'strip_tags_variation11.phpt': "not implemented", 'strip_tags_variation2.phpt': "not implemented", 'strip_tags_variation4.phpt': "not implemented", 'strip_tags_variation5.phpt': "not implemented", 'strip_tags_variation6.phpt': "not implemented", 'strip_tags_variation7.phpt': "not implemented", 'strip_tags_variation8.phpt': "not implemented", 'strip_tags_variation9.phpt': "not implemented", 'unpack_error.phpt': "Invalid format type Z????", 'vfprintf_error4.phpt': "warning issue", 'vfprintf_variation1.phpt': "context", 'wordwrap.phpt': "not implemented", 'http_build_query_variation3.phpt': "need to review", 'join_error.phpt': "Errors say implode() instead of join()", 'join_variation2.phpt': "need to review", 'str_replace.phpt': "need to review", 'stripos_variation10.phpt': "need to review", 'stripos_variation11.phpt': "need to review", 'stristr_variation2.phpt': "For an object it expects: Notice: Object of class sample could not be converted to int", 'strlen.phpt': "Expects: Warning: strlen() expects parameter 1 to be string, array given got Notice instead", 'strlen_variation1.phpt': "need to review", 'strncasecmp_variation10.phpt': "need to review", 'strncasecmp_variation11.phpt': "need to review", 'strncasecmp_variation4.phpt': "need to review", 'strncmp_variation4.phpt': "need to review", 'strrchr_variation10.phpt': "need to review", 'strrchr_variation11.phpt': "need to review", 'strrpos_variation10.phpt': "need to review", 'strrpos_variation11.phpt': "need to review", } # GENERAL markers[general_test_dir] = { 'bug47027.phpt': "Missing ArrayObject class", 'bug60227_4.phpt': 'SKIP: Unknown phpt section header: EXPECTHEADERS', 'bug60227_3.phpt': 'SKIP: Unknown phpt section header: EXPECTHEADERS', 'bug60227_2.phpt': 'SKIP: Unknown phpt section header: EXPECTHEADERS', 'bug60227_1.phpt': 'SKIP: Unknown phpt section header: EXPECTHEADERS', 'debug_zval_dump_b_64bit.phpt': ("NotImplementedError: " "abstract base class"), 'debug_zval_dump_v.phpt': ("NotImplementedError: " "abstract base class"), 'var_export_basic6.phpt': "var_dump reports different lengths", 'type.phpt': "?", 'gettype_settype_basic.phpt': "?", 'parse_ini_file.phpt': "parsing", 'print_r_64bit.phpt': "?", 'parse_ini_string_002.phpt': "?", 'include_path.phpt': "?", 'call_user_func_array_variation_003.phpt': "?", 'call_user_func_array_variation_001.phpt': "missing call_user_func_array()", '004.phpt': "not implemented", '010.phpt': "not implemented", 'bug27678.phpt': "not implemented", 'bug29038.phpt': "not implemented", 'bug32647.phpt': "not implemented", 'bug34794.phpt': "not implemented", 'bug39322.phpt': "not implemented", 'bug40398.phpt': "not implemented", 'bug40752.phpt': "not implemented", 'bug41037.phpt': "not implemented", 'bug41445.phpt': "not implemented", 'bug41445_1.phpt': "not implemented", 'bug41970.phpt': "not implemented", 'bug43293_1.phpt': "not implemented", 'bug43293_2.phpt': "not implemented", 'bug43293_3.phpt': "not implemented", 'bug44394.phpt': "not implemented", 'bug44394_2.phpt': "not implemented", 'bug44461.phpt': "not implemented", 'bug44487.phpt': "not implemented", 'bug44667.phpt': "not implemented", 'bug47857.phpt': "not implemented", 'bug47859.phpt': "not implemented", 'bug48660.phpt': "not implemented", 'bug48768.phpt': "not implemented", 'bug49056.phpt': "not implemented", 'bug49692.phpt': "not implemented", 'bug52138.phpt': "not implemented", 'bug55371.phpt': "not implemented", 'bug60723.phpt': "not implemented", 'call_user_func_return.phpt': "not implemented", 'call_user_method.phpt': "not implemented", 'call_user_method_002.phpt': "not implemented", 'callbacks_001.phpt': "parent as class name", 'callbacks_002.phpt': "wording", 'closures_001.phpt': "undefined register_shutdown_function()", 'closures_002.phpt': "unexpected T_DECLARE", 'debug_zval_dump_e.phpt': "not implemented", 'debug_zval_dump_o.phpt': "not implemented", 'dl-cve-2007-4887.phpt': "not implemented", 'error_get_last.phpt': "not implemented", 'get_defined_constants_basic.phpt': slow, 'get_extension_funcs_basic.phpt': "not implemented", 'get_extension_funcs_error.phpt': "not implemented", 'get_extension_funcs_variation.phpt': "not implemented", 'get_loaded_extensions_basic.phpt': "not implemented", 'get_magic_quotes_runtime.phpt': "not implemented", 'getopt.phpt': "not implemented", 'getopt_002.phpt': "not implemented", 'getopt_003.phpt': "not implemented", 'getopt_004.phpt': "not implemented", 'getopt_005.phpt': "not implemented", 'gettype_settype_error.phpt': "not implemented", 'get_cfg_var_basic.phpt': "requires ini parse to return strings", 'get_cfg_var_variation6.phpt': "requires ini parse to return strings", 'get_cfg_var_variation8.phpt': "magic_quotes_gpc unsupported", 'get_cfg_var_variation9.phpt': "requires ini parse to return strings", 'head.phpt': "not implemented", 'highlight_heredoc.phpt': "not implemented", 'ini_get_all.phpt': "not implemented", 'is_callable_basic1.phpt': "not implemented", 'is_callable_basic2.phpt': "not implemented", 'is_callable_variation1.phpt': "not implemented", 'is_callable_variation2.phpt': "not implemented", 'ob_get_flush_basic.phpt': "not implemented", 'ob_get_flush_error.phpt': "not implemented", 'parse_ini_basic.phpt': "not implemented", 'parse_ini_booleans.phpt': "not implemented", 'parse_ini_string_001.phpt': "not implemented", 'phpcredits.phpt': "not implemented", 'phpcredits2.phpt': "not implemented", 'phpinfo.phpt': "not implemented", 'phpinfo2.phpt': "not implemented", 'proc_open02.phpt': "not implemented", 'set_magic_quotes_runtime_basic.phpt': "not implemented", 'set_magic_quotes_runtime_error.phpt': "not implemented", 'var_dump_64bit.phpt': "not implemented", } class SkipAll(dict): def get(self, *args): return 'SKIP: skipping the whole dir' markers[basic_test_dir] = { '011.phpt': "undefined argc argv", '002.phpt': "POST", '003.phpt': "POST/GET/COOKIE", '004.phpt': "POST", '005.phpt': "POST", '013.phpt': "POST", '014.phpt': "POST", '015.phpt': "POST", '016.phpt': "POST", '017.phpt': "POST", '018.phpt': "POST", '019.phpt': "POST", '020.phpt': "POST", '022.phpt': "COOKIE", '023.phpt': "COOKIE", '024.phpt': "HTTP_RAW_POST_DATA", '025.phpt': "POST Content-Length", '027.phpt': "$php_errormsg", 'bug20539.phpt': "?", 'bug29971.phpt': "$_ENV", 'bug51709_1.phpt': "parse error wording", 'bug51709_2.phpt': "parse error wording", 'bug53180.phpt': "order of keys", 'bug54514.phpt': "?", 'bug61000.phpt': "?", 'php_egg_logo_guid.phpt': "undefined php_egg_logo_guid()", 'php_logo_guid.phpt': "undefined php_logo_guid()", 'php_real_logo_guid.phpt': "undefined php_real_logo_guid()", 'zend_logo_guid.phpt': "undefined zend_logo_guid()", } markers[classes_test_dir] = { '__call_002.phpt': 'missing fatal', '__set__get_002.phpt': "missing fatal", '__set__get_003.phpt': "missing fatal", 'abstract_by_interface_001.phpt': 'order of execution for class defs vs ordinary statements', 'abstract_by_interface_002.phpt': 'order of execution for class defs vs ordinary statements', 'abstract_static.phpt': 'unexpected T_EVAL', 'abstract_user_call.phpt': 'unimplemented case in call_user_func()', 'array_access_003.phpt': "ArrayAccess: Fix ++ to raise notice for indirect modification of overloaded element", 'array_access_004.phpt': "ArrayAccess: Fix ++ to raise notice for indirect modification of overloaded element", 'array_access_009.phpt': "ArrayAccess: Operator implementation fix required", 'array_access_010.phpt': "ArrayAccess: Operator implementation fix required", 'array_access_011.phpt': "ArrayAccess: Operator implementation fix required", 'array_access_012.phpt': "ArrayAccess: Fix ++ to raise notice for indirect modification of overloaded element", 'autoload_005.phpt': "__destruct()", 'autoload_010.phpt': "__autoload() is called twice", 'autoload_011.phpt': "__autoload() is called twice", 'autoload_013.phpt': '?', 'autoload_014.phpt': "missing ReflectionMethod", 'autoload_015.phpt': "missing ReflectionProperty", 'autoload_016.phpt': 'ReflectionClass missing', 'autoload_017.phpt': 'ReflectionClass missing', 'bug27468.phpt': "need review", 'bug63462.phpt': "need review", 'constants_error_003.phpt': 'error message wording', 'constants_error_004.phpt': 'missing fatal', 'ctor_dtor.phpt': '__destruct()', 'ctor_dtor_inheritance.phpt': "__destruct()", 'ctor_in_interface_01.phpt': 'missing fatal (signature)', 'ctor_in_interface_02.phpt': 'missing fatal (signature)', 'ctor_in_interface_03.phpt': 'missing fatal (signature)', 'ctor_in_interface_04.phpt': 'strict warning should be fatal error', 'ctor_visibility.phpt': 'error message wording', 'destructor_and_echo.phpt': "__destruct()", 'destructor_and_exceptions.phpt': 'missing additional_catch', 'destructor_and_globals.phpt': '__destruct()', 'destructor_inheritance.phpt': '__destruct()', 'proc_open02.phpt': "not implemented", 'set_magic_quotes_runtime_basic.phpt': "not implemented", 'set_magic_quotes_runtime_error.phpt': "not implemented", # 'sleep_basic.phpt': "not implemented", 'sleep_error.phpt': "not implemented", 'usleep_basic.phpt': "not implemented", 'usleep_error.phpt': "not implemented", 'var_dump_64bit.phpt': "not implemented", } 'factory_and_singleton_006.phpt': '__destruct()', 'factory_and_singleton_009.phpt': '__destruct()', 'factory_and_singleton_010.phpt': '__destruct()', 'final_ctor1.phpt': 'Class ReflectionClass not found', 'final_ctor2.phpt': 'Class ReflectionClass not found', 'implicit_instantiation_001.phpt': "need review", 'inheritance_007.phpt': 'missing ReflectionClass', 'interface_method.phpt': "syntax error, unexpected ';'", 'interface_method_private.phpt': 'error message wording', 'interfaces_003.phpt': 'typehinting for constructor', 'iterators_002.phpt': "missing __destruct()", 'iterators_005.phpt': "missing fatal (implements Traversable)", 'new_001.phpt': 'deprecated in PHP', 'serialize_001.phpt': "need review", 'static_properties_undeclared_read.phpt': "missing fatal", 'tostring_001.phpt': "?", 'tostring_002.phpt': "__destruct()", 'tostring_003.phpt': 'missing fatal error (__destruct())', 'tostring_004.phpt': 'printf()', 'type_hinting_004.phpt': 'set_error_handler()', } markers[func_test_dir] = { '005.phpt': "undefined function register_shutdown_function()", '005a.phpt': slow, # infinity slow for now '006.phpt': "problem with ob_buffering", '007.phpt': "problem in ini_set()", '010.phpt': slow, 'ini_alter.phpt': "undefined function ini_alter()", } markers[lang_test_dir] = { '019.phpt': "T_EVAL", '031.phpt': slow, '038.phpt': "?", '045.phpt': "missing set_time_limit()", 'bug17115.phpt': "missing create_function()", 'bug20175.phpt': "deprecated in PHP", 'bug21094.phpt': "set_error_handler()", 'bug21820.phpt': "should not parse", 'bug22231.phpt': "deprecated in PHP", 'bug22510.phpt': "unexpected T_LIST", 'bug22690.phpt': "missing create_function()", 'bug23624.phpt': "does not compile", 'bug24403.phpt': "problem in preg_replace()", 'bug24658.phpt': "error wording", 'bug24908.phpt': "?", 'bug24926.phpt': "missing create_function()", 'bug24951.phpt': "?", 'bug25145.phpt': "undefined _REQUEST", 'bug25922.phpt': "?", 'bug30578.phpt': "?", 'bug32828.phpt': "missing fatal (uncaught exception)", 'bug35176.phpt': "?", 'bug44827.phpt': "missing warning", 'bug45392.phpt': "missing fatal", 'bug55754.phpt': "Cannot pass parameter 1 by reference", 'catchable_error_002.phpt': "?", 'each_binary_safety.phpt': slow, 'engine_assignExecutionOrder_002.phpt': "?", 'engine_assignExecutionOrder_004.phpt': "?", 'engine_assignExecutionOrder_007.phpt': "?", 'error_2_exception_001.phpt': "undefined trigger_error()", 'foreachLoop.001.phpt': "problem with current()", 'foreachLoop.005.phpt': "needs proper refcounting?", 'foreachLoop.006.phpt': "store_fast_ref() with non-ref", 'foreachLoop.007.phpt': "should not parse", 'foreachLoop.009.phpt': "?", 'foreachLoop.011.phpt': "?", 'foreachLoop.013.phpt': "parse error", 'foreachLoop.014.phpt': "?", 'foreachLoop.015.phpt': "?", 'foreachLoop.016.phpt': "needs proper refcounting?", 'foreachLoopObjects.003.phpt': "?", 'foreachLoopObjects.005.phpt': "?", 'foreachLoopObjects.006.phpt': "?", 'passByReference_002.phpt': "wrong kind of fatal", 'passByReference_005.phpt': "order of warnings", 'passByReference_010.phpt': "should be strict instead of fatal", 'returnByReference.003.phpt': "missing warnings", 'returnByReference.004.phpt': "missing warnings", 'returnByReference.005.phpt': "missing warnings", 'returnByReference.006.phpt': "missing warnings", 'returnByReference.007.phpt': "missing warnings", 'returnByReference.008.phpt': "missing warnings", 'returnByReference.009.phpt': "missing warnings", 'script_tag.phpt': "?", 'short_tags.002.phpt': "?", 'short_tags.003.phpt': "?", 'short_tags.004.phpt': "?", 'type_hints_002.phpt': "instance numbering", 'type_hints_003.phpt': "missing fatal", } markers[operators_test_dir] = { 'operator_equals_basic.phpt': "precision issue in str to float conversion", 'operator_gt_or_equal_basic.phpt': "precision issue in str to float conversion", 'operator_notequals_basic.phpt': "precision issue in str to float conversion", } markers[output_test_dir] = { 'bug46897.phpt': "ob_start() with 3 args", 'bug60282.phpt': "undefined ob_gzhandler()", 'ob_010.phpt': "our print_r() does not use output buffering", 'ob_013.phpt': "undefined ob_list_handlers()", 'ob_015.phpt': "recursion problem", 'ob_017.phpt': "flags", 'ob_get_level_basic_001.phpt': 'does not work prop', 'ob_get_status.phpt': "undefined ob_get_status()", 'ob_start_basic_002.phpt': "undefined get_defined_functions()", 'ob_start_basic_005.phpt': "undefined ob_list_handlers()", 'ob_start_basic_006.phpt': "undefined ob_list_handlers()", 'ob_start_basic_unerasable_002.phpt': "ob_start() with 3 args", 'ob_start_basic_unerasable_003.phpt': "ob_start() with 3 args", 'ob_start_basic_unerasable_004.phpt': "ob_start() with 3 args", 'ob_start_basic_unerasable_005.phpt': "ob_start() with 3 args", } markers[runtest_test_dir] = { 'test002.phpt': "%x unsupported", 'test004.phpt': "SKIP: parse error in ini", 'test005.phpt': "Undefined variable: php_errormsg", 'test007.phpt': "dirname()", 'test008.phpt': "division by zero", 'test008a.phpt': "Undefined variable: php_errormsg", 'test010.phpt': "SKIP: unknown section STDIN", } markers[security_test_dir] = { 'open_basedir_001.phpt': 'dir runtime tighting', 'open_basedir_dir.phpt': 'dir not implemented', 'open_basedir_error_log.phpt': '?', 'open_basedir_error_log_variation.phpt': '?', 'open_basedir_glob.phpt': 'missing glob', 'open_basedir_glob_variation.phpt': 'missing glob', 'open_basedir_linkinfo.phpt': 'warning missmatch', 'open_basedir_tempnam.phpt': 'warning missmatch', } markers[strings_test_dir] = { '002.phpt': "problem with php://stdout", '004.phpt': "undefined function highlight_string()", 'bug26703.phpt': "undefined function highlight_string()", } markers[mysql_test_dir] = { 'bug48754.phpt': "problems problems", 'bug53649.phpt': "The used command is not allowed with this MySQL version", 'bug55473.phpt': "problems problems", 'mysql_create_db.phpt': "deprecated api", 'mysql_deprecated_api.phpt': "deprecated", 'mysql_drop_db.phpt': "deprecated", 'mysql_escape_string.phpt': 'unimplemented mysql_escape_string', 'mysql_fetch_array.phpt': "missing data() printf issues", 'mysql_fetch_field.phpt': "SKIP: hangs, regexp flags not supported yet", 'mysql_fetch_lengths.phpt': "?", 'mysql_fetch_object.phpt': 'still problems', 'mysql_field_flags.phpt': "SKIP: regexp flags not supported yet", 'mysql_max_links.phpt': 'printf() problem', 'mysql_max_persistent.phpt': 'printf() problem', 'mysql_pconn_disable.phpt': "not finished", 'mysql_pconn_kill.phpt': "dont have persistent connections for real :)", 'mysql_pconn_max_links.phpt': 'missing mysql_real_escape_string()', 'mysql_pconn_reuse.phpt': 'printf() problem', 'mysql_phpinfo.phpt': "?", 'mysql_query_load_data_openbasedir.phpt': "not finished", 'mysql_result.phpt': '?', 'mysql_sql_safe_mode.phpt': "?", # 'mysql_stat.phpt': "missing soundex()", 'mysql_trace_mode.phpt': 'missing mysql_escape_string()', } markers[network_test_dir] = { 'bug41347.phpt': 'missing dns_check_record()', 'closelog_basic.phpt': 'missing closelog()', 'closelog_error.phpt': 'missing closelog()', 'fsockopen_error.phpt': 'error', 'gethostbyname_error003.phpt': 'GAIError: No address associated with hostname', 'gethostbyname_error005.phpt': 'args problem', 'gethostbyname_error006.phpt': 'GAIError: No address associated with hostname', 'gethostbynamel_basic1.phpt': 'compare problem %a', 'getmxrr.phpt': 'missing getmxrr()', 'http-stream.phpt': 'Class DomDocument not found', 'inet.phpt': 'inet_ntop() takes exactly 2 arguments (1 given)', 'inet_ipv6.phpt': 'SKIP: ValueError in SKIPIF', 'ip_x86_64.phpt': 'does not work as expected', 'long2ip_variation1.phpt': 'does not work as expected', 'socket_get_status_basic.phpt': 'missing stream_socket_server()', 'syslog_error.phpt': 'missing syslog()', 'tcp4loop.phpt': 'missing stream_socket_server()', 'tcp6loop.phpt': 'missing stream_socket_server()', 'udgloop.phpt': 'missing stream_get_transports()', 'udp4loop.phpt': 'missing stream_socket_server()', 'udp6loop.phpt': 'missing stream_socket_server()', 'unixloop.phpt': 'missing stream_get_transports()', } markers[url_test_dir] = { 'get_headers_error_001.phpt': 'get_headers not implemented', 'get_headers_error_002.phpt': 'get_headers not implemented', } markers[session_test_dir] = { '004.phpt': 'not implemented', '005.phpt': 'not implemented', '012.phpt': 'not implemented', '014.phpt': 'not implemented', '015.phpt': 'SKIP: parse error in ini', '018.phpt': 'not implemented', '020.phpt': 'not implemented', '021.phpt': 'not implemented', '024.phpt': 'not implemented', '025.phpt': 'not implemented', 'bug26862.phpt': 'not implemented', 'bug31454.phpt': 'not implemented', 'bug32330.phpt': 'not implemented', 'bug36459.phpt': 'not implemented', 'bug41600.phpt': 'not implemented', 'bug42596.phpt': 'not implemented', 'bug53141.phpt': 'not implemented', 'bug55688.phpt': 'not implemented', 'bug60634_error_1.phpt': 'not implemented', 'bug60634_error_2.phpt': 'not implemented', 'bug60634_error_3.phpt': 'not implemented', 'bug60634_error_4.phpt': 'not implemented', 'bug60634_error_5.phpt': 'not implemented', 'bug60634.phpt': 'not implemented', 'bug60860.phpt': 'not implemented', 'bug61728.phpt': 'not implemented', 'bug63379_nodestroy.phpt': 'not implemented', 'bug63379.phpt': 'not implemented', 'rfc1867_cleanup.phpt': 'not implemented', 'rfc1867_disabled_2.phpt': 'not implemented', 'rfc1867_disabled.phpt': 'not implemented', 'rfc1867_inter.phpt': 'not implemented', 'rfc1867_invalid_settings_2.phpt': 'SKIP: parse error in ini', 'rfc1867_invalid_settings_2-win.phpt': 'SKIP: parse error in ini', 'rfc1867_invalid_settings.phpt': 'not implemented', 'rfc1867_invalid_settings-win.phpt': 'not implemented', 'rfc1867_no_name.phpt': 'not implemented', 'rfc1867.phpt': 'not implemented', 'rfc1867_sid_cookie.phpt': 'not implemented', 'rfc1867_sid_get_2.phpt': 'not implemented', 'rfc1867_sid_get.phpt': 'not implemented', 'rfc1867_sid_invalid.phpt': 'not implemented', 'rfc1867_sid_only_cookie_2.phpt': 'not implemented', 'rfc1867_sid_only_cookie.phpt': 'not implemented', 'rfc1867_sid_post.phpt': 'not implemented', 'save_handler_closures.inc': 'not implemented', 'save_handler.inc': 'not implemented', 'session_cache_expire_error.phpt': 'round problem', 'session_cache_expire_variation2.phpt': 'not implemented', 'session_decode_error2.phpt': 'resource as index', 'session_decode_basic.phpt': 'instance counter', 'session_decode_variation2.phpt': 'problem with _SESSION shold rise notice', 'session_decode_variation3.phpt': 'problem with _SESSION shold rise notice', 'session_encode_error2.phpt': 'resource as index', 'session_encode_variation1.phpt': 'nonsense lack of warnings', 'session_encode_variation7.phpt': 'php-binary not implemented yet', 'sessionhandler_open_001.phpt': 'not implemented', 'session_id_error4.phpt': 'string length problem..???', 'session_module_name_basic.phpt': 'not implemented', 'session_module_name_error.phpt': 'not implemented', 'session_module_name_variation1.phpt': 'not implemented', 'session_module_name_variation2.phpt': 'undefined session_set_save_handler()', 'session_module_name_variation3.phpt': 'not implemented', 'session_save_path_error.phpt': 'not implemented', 'session_save_path_variation2.phpt': 'not implemented', 'session_save_path_variation3.phpt': 'not implemented', 'session_save_path_variation4.phpt': 'not implemented', 'session_save_path_variation5.phpt': 'not implemented', 'session_set_save_handler_basic.phpt': 'not implemented', 'session_set_save_handler_class_001.phpt': 'not implemented', 'session_set_save_handler_class_002.phpt': 'not implemented', 'session_set_save_handler_class_003.phpt': 'not implemented', 'session_set_save_handler_class_004.phpt': 'not implemented', 'session_set_save_handler_class_005.phpt': 'not implemented', 'session_set_save_handler_class_006.phpt': 'not implemented', 'session_set_save_handler_class_007.phpt': 'not implemented', 'session_set_save_handler_class_008.phpt': 'not implemented', 'session_set_save_handler_class_009.phpt': 'not implemented', 'session_set_save_handler_class_010.phpt': 'not implemented', 'session_set_save_handler_class_011.phpt': 'not implemented', 'session_set_save_handler_class_012.phpt': 'not implemented', 'session_set_save_handler_class_013.phpt': 'not implemented', 'session_set_save_handler_class_014.phpt': 'not implemented', 'session_set_save_handler_class_015.phpt': 'not implemented', 'session_set_save_handler_closures.phpt': 'not implemented', 'session_set_save_handler_error2.phpt': 'not implemented', 'session_set_save_handler_error3.phpt': 'not implemented', 'session_set_save_handler_error4.phpt': 'not implemented', 'session_set_save_handler_error.phpt': 'not implemented', 'session_set_save_handler_iface_001.phpt': 'not implemented', 'session_set_save_handler_iface_002.phpt': 'not implemented', 'session_set_save_handler_variation1.phpt': 'not implemented', 'session_set_save_handler_variation2.phpt': 'not implemented', 'session_set_save_handler_variation3.phpt': 'not implemented', 'session_set_save_handler_variation4.phpt': 'not implemented', 'session_status_disabled.phpt': 'not implemented', } markers[serialize_test_dir] = { '003.phpt': 'EXPECTREGEX', '005.phpt': 'Interface Serialzable not defined', '006.phpt': 'lexer problems, possibly utf-problem', 'bug25378.phpt': 'does not work yet', 'bug26762.phpt': 'does not work yet', 'bug27469.phpt': 'does not work yet', 'bug31402.phpt': 'does not work yet', 'bug36424.phpt': 'does not work yet', 'bug45706.phpt': 'does not work yet', 'bug62836_1.phpt': 'does not work yet', 'bug62836_2.phpt': 'does not work yet', 'bug64354_3.phpt': 'does not work yet', 'incomplete_class.phpt': 'does not work yet', 'serialization_miscTypes_001.phpt': 'only 32bit', 'serialization_objects_001.phpt': 'does not work yet', 'serialization_objects_002.phpt': 'does not work yet', 'serialization_objects_005.phpt': 'does not work yet', 'serialization_objects_006.phpt': 'does not work yet', 'serialization_objects_007.phpt': 'does not work yet', 'serialization_objects_008.phpt': 'does not work yet', 'serialization_objects_009.phpt': 'does not work yet', 'serialization_objects_010.phpt': 'does not work yet', 'serialization_objects_015.phpt': 'does not work yet', } markers[streams_test_dir] = { "bug40459.phpt": "SKIP: not implemented", "bug44712.phpt": "SKIP: not implemented", "bug44818.phpt": "SKIP: not implemented", "bug46024.phpt": "SKIP: not implemented", "bug46426.phpt": "SKIP: not implemented", "bug47997.phpt": "SKIP: not implemented", "bug48309.phpt": "SKIP: not implemented", "bug49936.phpt": "SKIP: not implemented", "bug49936_win32.phpt": "SKIP: not implemented", "bug53427.phpt": "SKIP: not implemented", "bug53903.phpt": "SKIP: not implemented", "bug54623.phpt": "SKIP: not implemented", "bug54946.phpt": "SKIP: not implemented", "bug60106.phpt": "SKIP: not implemented", "bug60455_01.phpt": "SKIP: not implemented", "bug60455_02.phpt": "SKIP: not implemented", "bug60455_03.phpt": "SKIP: not implemented", "bug60455_04.phpt": "SKIP: not implemented", "bug60817.phpt": "SKIP: not implemented", "bug61115-1.phpt": "SKIP: not implemented", "bug61115-2.phpt": "SKIP: not implemented", "bug61115.phpt": "SKIP: not implemented", "bug61371-win.phpt": "SKIP: not implemented", "bug61371.phpt": "SKIP: not implemented", "bug63240.phpt": "SKIP: not implemented", "bug64166.phpt": "SKIP: not implemented", "bug64166_2.phpt": "SKIP: not implemented", "bug64166_3.phpt": "SKIP: not implemented", "bug64433.phpt": "SKIP: not implemented", "bug64770.phpt": "SKIP: not implemented", "bug65483.phpt": "SKIP: not implemented", "stream_context_get_params_001.phpt": "SKIP: not implemented", "stream_context_set_option_basic.phpt": "SKIP: not implemented", "stream_context_set_option_error_001.phpt": "SKIP: not implemented", "stream_context_set_option_error_002.phpt": "SKIP: not implemented", "stream_copy_to_stream_socket.phpt": "SKIP: not implemented", "stream_get_contents_001.phpt": "SKIP: not implemented", "stream_get_contents_002.phpt": "SKIP: not implemented", "stream_get_line_NUL_delimiter.phpt": "SKIP: not implemented", "stream_get_line_nb.phpt": "SKIP: not implemented", "stream_get_meta_data_dir_basic.phpt": "SKIP: not implemented", "stream_get_meta_data_file_basic.phpt": "SKIP: not implemented", "stream_get_meta_data_file_error.phpt": "SKIP: not implemented", "stream_get_meta_data_file_variation1.phpt": "SKIP: not implemented", "stream_get_meta_data_file_variation2.phpt": "SKIP: not implemented", "stream_get_meta_data_file_variation4.phpt": "SKIP: not implemented", "stream_get_meta_data_file_variation5.phpt": "SKIP: not implemented", "stream_get_meta_data_process_basic.phpt": "SKIP: not implemented", "stream_get_meta_data_socket_basic.phpt": "SKIP: not implemented", "stream_get_meta_data_socket_variation1.phpt": "SKIP: not implemented", "stream_get_meta_data_socket_variation2.phpt": "SKIP: not implemented", "stream_get_meta_data_socket_variation3.phpt": "SKIP: not implemented", "stream_get_meta_data_socket_variation4.phpt": "SKIP: not implemented", "stream_is_local.phpt": "SKIP: not implemented", "stream_set_chunk_size.phpt": "SKIP: not implemented", "stream_set_timeout_error.phpt": "SKIP: not implemented", "stream_socket_pair.phpt": "SKIP: not implemented", } markers[date_test_dir] = { 'bug44742.phpt': 'SKIP: segmentation fault', 'date_diff.phpt': 'SKIP: it takes 10 minutes to execute', 'date_time_set_variation3.phpt': 'SKIP: looks like bad test', 'DatePeriod_wrong_constructor.phpt': 'DatePeriod not implemented', 'DateTimeZone_construct_error.phpt': 'Exception handling', 'DateTimeZone_getTransitions_basic1.phpt': 'Not Implemented', 'DateTimeZone_serialize.phpt': 'Not Implemented', 'DateTimeZone_verify.phpt': "ReflectionClass::getMethods() not Not Implemented", 'DateTime_clone_basic3.phpt': "iterproperties order broken", 'DateTime_construct_error.phpt': "handling arguments in builtin needs to be improved", "DateTime_serialize.phpt": "not implemented", "DateTime_verify.phpt": "not implemented", "big_year.phpt": "not implemented", "bug35425.phpt": "not implemented", "bug40743.phpt": "not implemented", "bug41523-64bit.phpt": "not implemented", "bug41709.phpt": "not implemented", "bug42910.phpt": "not implemented", "bug43003.phpt": "not implemented", "bug43075.phpt": "not implemented", "bug43808.phpt": "not implemented", "bug44562.phpt": "not implemented", "bug45529.phpt": "not implemented", "bug45554.phpt": "not implemented", "bug45866.phpt": "not implemented", "bug46108.phpt": "not implemented", "bug46874.phpt": "not implemented", "bug48097.phpt": "not implemented", "bug48476.phpt": "not implemented", "bug48678.phpt": "not implemented", "bug49585.phpt": "not implemented", "bug49700.phpt": "not implemented", "bug49778.phpt": "not implemented", "bug50055.phpt": "not implemented", "bug50392.phpt": "not implemented", "bug51096.phpt": "not implemented", "bug51393.phpt": "not implemented", "bug51866.phpt": "not implemented", "bug52062-64bit.phpt": "not implemented", "bug52113.phpt": "not implemented", "bug52290.phpt": "not implemented", "bug52342.phpt": "not implemented", "bug52430.phpt": "not implemented", "bug52577.phpt": "not implemented", "bug52668.phpt": "not implemented", "bug52808.phpt": "not implemented", "bug53437.phpt": "not implemented", "bug53437_var1.phpt": "not implemented", "bug53437_var2.phpt": "not implemented", "bug53437_var5.phpt": "not implemented", "bug54283.phpt": "not implemented", "bug54316.phpt": "not implemented", "bug54340.phpt": "not implemented", "bug55397.phpt": "not implemented", "bug60236.phpt": "not implemented", "bug62500.phpt": "not implemented", "bug62561.phpt": "not implemented", "bug62852.phpt": "not implemented", "bug62852_var2.phpt": "not implemented", "bug62852_var3.phpt": "not implemented", "bug62896.phpt": "not implemented", "bug63435.phpt": "not implemented", "bug64157.phpt": "not implemented", "date-lenient-create.phpt": "not implemented", "date-lenient.phpt": "not implemented", "date-set-timestamp.phpt": "not implemented", "date_create-2.phpt": "not implemented", "date_create_from_format_basic.phpt": "not implemented", "date_default_timezone_get-4.phpt": "not implemented", "date_default_timezone_get_error.phpt": "not implemented", "date_diff1.phpt": "not implemented", "date_get_last_errors_basic.phpt": "not implemented", "date_modify-2.phpt": "not implemented", "date_modify_variation2.phpt": "not implemented", "date_offset_get_error.phpt": "not implemented", "date_offset_get_variation1.phpt": "not implemented", "date_parse_001.phpt": "not implemented", "date_parse_basic1.phpt": "not implemented", "date_parse_error.phpt": "not implemented", "date_parse_from_format_basic.phpt": "not implemented", "date_parse_variation1.phpt": "not implemented", "date_period.phpt": "not implemented", "date_timezone_get_basic1.phpt": "not implemented", "date_timezone_set_basic1.phpt": "not implemented", "gmdate_variation1.phpt": "not implemented", "gmdate_variation10.phpt": "not implemented", "gmdate_variation9.phpt": "not implemented", "idate_variation5.phpt": "not implemented", "idate_variation6.phpt": "not implemented", "oo_001.phpt": "not implemented", "rfc-datetime_and_daylight_saving_time-type2.phpt": "not implemented", "strtotime3-64bit.phpt": "not implemented", "test-parse-from-format.phpt": "not implemented", "time_error.phpt": "not implemented", "timestamp-in-dst.phpt": "not implemented", "timezone_identifiers_list_wrong_constructor.phpt": "not implemented", "timezone_offset_get_error.phpt": "not implemented", "timezone_offset_get_variation1.phpt": "not implemented", "timezone_offset_get_variation2.phpt": "not implemented", "timezone_transitions_get_basic1.phpt": "not implemented", "timezone_transitions_get_error.phpt": "not implemented", "timezone_transitions_get_variation1.phpt": "not implemented", "timezone_transitions_get_variation2.phpt": "not implemented", "timezone_transitions_get_variation3.phpt": "not implemented", } markers[pcre_test_dir] = { 'cache_limit.phpt': 'SKIP: slow and stupid', '002.phpt': 'flag e unsupported', '004.phpt': 'flag e unsupported', '006.phpt': 'backtrack_limit setting via --INI-- not working?', 'backtrack_limit.phpt': 'in-progress', 'bug44191.phpt': 'preg_grep() unimplemented', 'bug44925.phpt': 'preg_grep() unimplemented', 'bug52732.phpt': 'SKIP: hangs', 'grep.phpt': 'preg_grep() unimplemented', 'grep2.phpt': 'preg_grep() unimplemented', 'preg_grep_basic.phpt': 'preg_grep() unimplemented', 'preg_grep_error.phpt': 'preg_grep() unimplemented', 'preg_grep_error1.phpt': 'preg_grep() unimplemented', 'preg_grep_error2.phpt': 'preg_grep() unimplemented', 'preg_match_all_error3.phpt': "we don't get the reference error during compile time", 'preg_replace.phpt': 'details about error msgs and e parameter', 'preg_replace_callback2.phpt': 'create_function() unimplemented', 'preg_replace_callback3.phpt': 'details about error msgs', 'recursion_limit.phpt': 'recursion_limit setting via --INI-- not working?', 'split2.phpt': "ini_set(pcre.recursion_limit) not working?", } markers[Zend_test_dir] = { 'bug40261.phpt': slow, 'bug40236.phpt': 'TEST_PHP_EXECUTABLE in env, should only run with -A', 'bug48408.phpt': slow, 'bug48409.phpt': slow, 'bug60978.phpt': 'SKIP: requires TEST_PHP_EXECUTABLE in env', 'closure_021.phpt': slow, 'exception_007.phpt': slow, '001.phpt': 'missing warnings around calling functions with wrong number ' 'of args', '002.phpt': 'details about func_get_arg() investigate', '003.phpt': '?', '005.phpt': check_sign_only, '006.phpt': check_sign_only, '008.phpt': 'defining TRUE', '015.phpt': 'undefined trigger_error()', '017.phpt': 'undefined get_loaded_extensions()', '019.phpt': '?', '021.phpt': "unexpected ':'", '030.phpt': "structure of Exception objects", '032.phpt': "?", '036.phpt': "toomany warnings", '037.phpt': "parse error", 'abstract-static.phpt': "?", 'access_modifiers_001.phpt': "error wording", 'access_modifiers_002.phpt': "error wording", 'access_modifiers_003.phpt': "error wording", 'access_modifiers_004.phpt': "error wording", 'access_modifiers_005.phpt': "error wording", 'access_modifiers_006.phpt': "error wording", 'add_002.phpt': "php has the same output as hippy??", 'add_003.phpt': "php has the same output as hippy??", 'anonymous_func_001.phpt': "undefined create_function()", 'anonymous_func_002.phpt': "undefined create_function()", 'anonymous_func_003.phpt': "undefined create_function()", 'argument_restriction_001.phpt': "missing &", 'argument_restriction_005.phpt': "ArrayAccess: Error message text", 'argument_restriction_006.phpt': "missing strict", 'binary.phpt': "parse error", 'bug20240.phpt': "undefined register_shutdown_function()", 'bug24773.phpt': "missing fatal", 'bug26166.phpt': "missing fatal", 'bug28377.phpt': "undefined debug_backtrace()", 'bug28444.phpt': "string conversion", 'bug29015.phpt': "?", 'bug29896.phpt': "problem with set_error_handler()", 'bug30080.phpt': "instance numbering", 'bug30791.phpt': "?", 'bug30828.phpt': "undefined debug_print_backtrace()", 'bug30922.phpt': "missing fatal error", 'bug30998.phpt': "?", 'bug32290.phpt': "call_user_func_array()", 'bug32322.phpt': "?", 'bug32596.phpt': "?", 'bug32660.phpt': "?", 'bug32799.phpt': "missing output", 'bug32833.phpt': "?", 'bug33277.phpt': "?", 'bug33318.phpt': "throwing non-Exception", 'bug33512.phpt': "?", 'bug33802.phpt': "set_error_handler()", 'bug33996.phpt': "?", 'bug33999.phpt': "?", 'bug34064.phpt': "?", 'bug34199.phpt': "undefined simplexml_load_string()", 'bug34518.phpt': "?", 'bug34617.phpt': "undefined xml_parser_create()", 'bug35470.phpt': "does not parse", 'bug35655.phpt': "undefined highlight_string()", 'bug36071.phpt': "problem in Interpreter.CLONE", 'bug36303.phpt': "?", 'bug36513.phpt': "missing strip_tags", 'bug36759.phpt': "__destruct()", 'bug37212.phpt': "?", 'bug37251.phpt': "?", 'bug37632.phpt': "call to protected method", 'bug37811.phpt': "?", 'bug38047.phpt': "infinite recursion", 'bug38220.phpt': "conversion to string", 'bug38461.phpt': "Cannot access private property", 'bug38624.phpt': "stack trace", 'bug38779.phpt': "undefined stream_wrapper_register()", 'bug38779_1.phpt': "undefined stream_wrapper_register()", 'bug39018.phpt': "?", 'bug40509.phpt': "?", 'bug40621.phpt': "strict vs fatal error", 'bug40705.phpt': "?", 'bug40770.phpt': "missing fatal (memory size)", 'bug40833.phpt': "ArrayAccess", 'bug41026.phpt': "undefined register_shutdown_function()", 'bug41209.phpt': "ArrayAccess", 'bug41421.phpt': "undefined stream_wrapper_register()", 'bug41633_2.phpt': "?", 'bug41633_3.phpt': "infinite recursion", 'bug41813.phpt': "?", 'bug41919.phpt': "?", 'bug42767.phpt': "undefined highlight_string()", 'bug42817.phpt': "Interpreter.CLONE", 'bug42818.phpt': "Interpreter.CLONE", 'bug42819.phpt': "missing ArrayObject", 'bug43027.phpt': "unexpected T_DECLARE", 'bug43175.phpt': "__call via traditional factory should be caught", 'bug43200.phpt': "ReflectionClass", 'bug43201.phpt': "?", 'bug43332_2.phpt': "\\self is an invalid class name", 'bug43343.phpt': "parse error: should complain about '\\', not '::'", 'bug43344_1.phpt': "wrong error message in notice", 'bug43344_10.phpt': "notice should be a fatal", 'bug43344_11.phpt': "notice should be a fatal", 'bug43344_12.phpt': "notice should be a fatal", 'bug43344_13.phpt': "notice should be a fatal", 'bug43344_6.phpt': "notice should be a fatal", 'bug43344_7.phpt': "notice should be a fatal", 'bug43344_8.phpt': "notice should be a fatal", 'bug43344_9.phpt': "notice should be a fatal", 'bug43450.phpt': slow, 'bug43703.phpt': "?", 'bug43918.phpt': "missing SimpleXMLElement", 'bug44141.phpt': "Call to private X::__construct()", 'bug44660.phpt': "?", 'bug44827.phpt': "missing warnings", 'bug45178.phpt': "deprecated in PHP", 'bug45186.phpt': "call_user_func()", 'bug45186_2.phpt': "call_user_func()", 'bug45805.phpt': "set_error_handler()", 'bug45862.phpt': "undefined get_class_vars()", 'bug46106.phpt': "?", 'bug46196.phpt': "set_error_handler()", 'bug46238.phpt': "?", 'bug46241.phpt': "set_error_handler()", 'bug46304.phpt': "does not parse", 'bug46381.phpt': "missing ArrayIterator", 'bug46811.phpt': "SKIP: parse error in INI", 'bug47320.phpt': "$php_errormsg", 'bug47516.phpt': "?", 'bug47572.phpt': "our late static binding happens later than PHP's", 'bug47704.phpt': "?", 'bug47836.phpt': "?", 'bug47880.phpt': "undefined debug_backtrace()", 'bug47981.phpt': "?", 'bug48228.phpt': "stack trace", 'bug48248.phpt': "?", 'bug48667_1.phpt': "SKIP: small diff in error message", 'bug48693.phpt': "undefined create_function()", 'bug48770.phpt': "Call to undefined method C::parent::func()", 'bug48770_2.phpt': "Call to undefined method C::parent::func2()", 'bug48770_3.phpt': "Call to undefined method C::self::func2()", 'bug48899.phpt': "?", 'bug48930.phpt': "?", 'bug49866.phpt': "error wording", 'bug49893.phpt': "__destruct()", 'bug49908.phpt': "stack trace", 'bug50005.phpt': "stack trace", 'bug50146.phpt': "missing ReflectionObject", 'bug50174.phpt': "missing ReflectionMethod", 'bug50261.phpt': "?", 'bug50383.phpt': "$exc->getTrace()", 'bug50810.phpt': "Fails in a method calling property_exists()", 'bug51394.phpt': "stack trace", 'bug51421.phpt': "signature check for ctor", 'bug51822.phpt': "?", 'bug51827.phpt': "missing register_shutdown_function()", 'bug52001.phpt': "?", 'bug52041.phpt': "extra notice", 'bug52051.phpt': "undefined bb::bb()", 'bug52160.phpt': "?", 'bug52193.phpt': "unexpected &", 'bug52361.phpt': "conversion to string", 'bug52484.phpt': "missing fatal", 'bug52484_2.phpt': "missing fatal", 'bug52484_3.phpt': "undefined property A::$", 'bug52508.phpt': "missing parse_ini_file()", 'bug52614.phpt': "?", 'bug52879.phpt': "extra notice", 'bug53305.phpt': "?", 'bug53511.phpt': "interaction of exceptions and __destruct()", 'bug53629.phpt': "missing highlight_string()", 'bug53748.phpt': "missing traits", 'bug54265.phpt': "str_repeat()", 'bug54268.phpt': "missing fatal (memory size)", 'bug54305.phpt': "missing ReflectionMethod", 'bug54547.phpt': "?", 'bug54585.phpt': "undefined _GET", 'bug54624.phpt': "class_alias()", 'bug54910.phpt': "?", 'bug55007.phpt': "syntax error in eval()", 'bug55086.phpt': "missing traits", 'bug55137.phpt': "missing traits", 'bug55156.phpt': "missing ReflectionFunction", 'bug55247.phpt': "unexpected {", 'bug55509.phpt': "SKIP: LexerError (and also takes too much RAM)", 'bug55705.phpt': "?", 'bug55825.phpt': "missing traits", 'bug60099.phpt': "__HALT_COMPILER issue", 'bug60139.phpt': "missing gc_collect_cycles()", 'bug60169.phpt': "unexpected :", 'bug60536_001.phpt': "missing traits", 'bug60536_002.phpt': "missing traits", 'bug60536_003.phpt': "missing traits", 'bug60536_004.phpt': "missing traits", 'bug60536_005.phpt': "missing traits", 'bug60573.phpt': "signature check", 'bug60611.phpt': "unexpected {", 'bug60613.phpt': "missing fatal error", 'bug60825.phpt': "?", 'bug60909_1.phpt': "missing register_shutdown_function()", 'bug60909_2.phpt': "missing register_shutdown_function()", 'bug61087.phpt': "missing parse_ini_file()", 'bug61225.phpt': "unexpected T_STRING", 'bug61273.phpt': "call_user_func_array()", 'bug61761.phpt': "signature check", 'bug61767.phpt': "infinite recursion", 'bug61782.phpt': "cloning", 'bug62343.phpt': "missing class_alias()", 'bug62763.phpt': "missing register_shutdown_function()", 'bug62892.phpt': "unexpected T_STRING", 'bug62907.phpt': "missing traits", 'bug62956.phpt': "signature check", 'bug63111.phpt': "missing strict", 'bug63219.phpt': "unexpected T_STRING", 'bug63305.phpt': "Parse error unfinished heredoc", 'bug63336.phpt': "Function.signature_repr()", 'bug63762.phpt': "missing ReflectionProperty", 'bug63882.phpt': "SKIP: Hippy does not deal with comparison cycles yet", 'bug63982.phpt': "cannot access protected property", 'bug64239_1.phpt': "unexpected T_USE", 'bug64239_2.phpt': "unexpected T_USE", 'bug64239_3.phpt': "unexpected T_USE", 'bug64239_4.phpt': "unexpected T_USE", 'bug64354.phpt': "missing Serializable", 'bug64417.phpt': "missing traits", 'bug64578.phpt': "set_error_handler()", 'bug64660.phpt': "unexpected }", 'bug64720.phpt': "missing debug_backtrace()", 'bug64821.1.phpt': "stack trace", 'bug64821.2.phpt': "stack trace", 'bug64821.3.phpt': "stack trace", 'bug64960.phpt': "set_exception_handler()", 'bug64966.phpt': "set_error_handler()", 'bug_debug_backtrace.phpt': "?", 'call_user_func_001.phpt': "wrong warning", 'call_user_func_002.phpt': "warning wording", 'call_user_func_003.phpt': "use references with closure", 'call_user_func_004.phpt': "?", 'call_user_func_005.phpt': "?", 'call_with_refs.phpt': "?", 'callable_type_hint_001.phpt': "?", 'callable_type_hint_002.phpt': "?", 'callable_type_hint_003.phpt': "?", 'cast_to_int.phpt': "?", 'cast_to_object.phpt': "?", 'class_alias_009.phpt': "missing fatal", 'class_exists_003.phpt': "?", 'clone_001.phpt': "?", 'clone_003.phpt': "?", 'closure_005.phpt': "__destruct()", 'closure_015.phpt': "set_error_handler()", 'closure_016.phpt': "is_callable()", 'closure_017.phpt': "destructor issue: probably doesn't make sense in hippy", 'closure_020.phpt': "var_dump() on closure object", 'closure_025.phpt': "?", 'closure_026.phpt': "?", 'closure_027.phpt': "?", 'closure_031.phpt': "?", 'closure_032.phpt': "?", 'closure_033.phpt': "?", 'closure_034.phpt': "?", 'closure_035.phpt': "?", 'closure_036.phpt': "?", 'closure_038.phpt': "?", 'closure_039.phpt': "?", 'closure_040.phpt': "?", 'closure_041.phpt': "?", 'closure_042.phpt': "?", 'closure_043.phpt': "?", 'closure_044.phpt': "?", 'closure_045.phpt': "?", 'closure_046.phpt': "?", 'compare_001_64bit.phpt': "?", 'compare_003_64bit.phpt': "?", 'compare_004_64bit.phpt': "?", 'compare_005_64bit.phpt': "?", 'compare_006_64bit.phpt': "?", 'constants_002.phpt': "?", 'debug_backtrace_limit.phpt': "?", 'debug_backtrace_options.phpt': "?", 'debug_print_backtrace_limit.phpt': "?", 'declare_001.phpt': "?", 'declare_003.phpt': "?", 'decrement_001_64bit.phpt': "?", 'dereference_002.phpt': "instance numbering", 'dereference_012.phpt': "conversion to string", 'dtor_scope.phpt': "?", 'dynamic_call_001.phpt': "missing fatal", 'dynamic_call_004.phpt': "missing fatal", 'errmsg_005.phpt': "wording function/method", 'errmsg_009.phpt': "Fatal Error/Parse Error", 'errmsg_010.phpt': "Fatal Error/Parse Error", 'errmsg_013.phpt': "parameters with array type hint can only be an array or NULL", 'errmsg_018.phpt': "Strict vs Fatal", 'errmsg_019.phpt': "wording", 'errmsg_020.phpt': "phpinfo has been desabled???", 'errmsg_021.phpt': "disabling classes missing ... pfff", 'errmsg_022.phpt': "wording", 'errmsg_027.phpt': "Class declarations may not be nested", 'errmsg_035.phpt': "wording", 'errmsg_036.phpt': "wording", 'errmsg_041.phpt': "what???", 'errmsg_042.phpt': "Key element cannot be a reference", 'exception_006.phpt': "undefined restore_exception_handler()", 'exception_008.phpt': "__destruct()", 'exception_handler_002.phpt': "stack trace", 'exception_handler_004.phpt': "?", 'exception_handler_006.phpt': "?", 'fr47160.phpt': "?", 'function_arguments_002.phpt': 'PHP syntax error say what token it was expecting', 'gc_001.phpt': "?", 'gc_002.phpt': "?", 'gc_003.phpt': "?", 'gc_004.phpt': "?", 'gc_005.phpt': "?", 'gc_006.phpt': "?", 'gc_007.phpt': "?", 'gc_008.phpt': "?", 'gc_009.phpt': "?", 'gc_010.phpt': "?", 'gc_011.phpt': "?", 'gc_012.phpt': "?", 'gc_013.phpt': "?", 'gc_014.phpt': "?", 'gc_015.phpt': "?", 'gc_016.phpt': "?", 'gc_017.phpt': "?", 'gc_018.phpt': "?", 'gc_019.phpt': "?", 'gc_020.phpt': "?", 'gc_021.phpt': "?", 'gc_022.phpt': "?", 'gc_023.phpt': "?", 'gc_024.phpt': "?", 'gc_026.phpt': "?", 'gc_027.phpt': "?", 'gc_028.phpt': "?", 'gc_029.phpt': "?", 'gc_030.phpt': "?", 'gc_031.phpt': "?", 'gc_032.phpt': "?", 'get_class_methods_002.phpt': "Missing: Strict Standards: Redefining already defined constructor for class B in %s on line %d", 'get_class_vars_001.phpt': "?", 'get_class_vars_002.phpt': "?", 'get_class_vars_003.phpt': "?", 'get_class_vars_004.phpt': "?", 'get_class_vars_005.phpt': "?", 'get_class_vars_006.phpt': "?", 'get_class_vars_007.phpt': "?", 'get_defined_functions_basic.phpt': "?", 'get_defined_functions_error.phpt': "?", 'get_required_files.phpt': "?", 'globals_001.phpt': "?", 'globals_002.phpt': "?", 'globals_003.phpt': "?", 'globals_004.phpt': "?", 'halt03.phpt': "?", 'halt_compiler2.phpt': "?", 'halt_compiler3.phpt': "?", 'instanceof_001.phpt': "missing create_function()", 'inter_007.phpt': "class_alias()", 'isset_003.phpt': "?", 'isset_003_2_4.phpt': "?", 'jump06.phpt': "?", 'jump12.phpt': "?", 'list_003.phpt': "?", 'list_006.phpt': "?", 'list_007.phpt': "?", 'lsb_006.phpt': "?", 'lsb_007.phpt': "?", 'lsb_008.phpt': "?", 'lsb_009.phpt': "?", 'lsb_010.phpt': "?", 'lsb_021.phpt': "?", 'lsb_022.phpt': "?", 'magic_by_ref_001.phpt': "missing fatal", 'magic_by_ref_002.phpt': "missing fatal", 'magic_by_ref_003.phpt': "missing fatal", 'magic_by_ref_004.phpt': "missing fatal", 'magic_by_ref_005.phpt': "missing fatal", 'magic_by_ref_006.phpt': "missing fatal", 'magic_by_ref_007.phpt': "missing fatal", 'magic_methods_002.phpt': "missing warning", 'magic_methods_003.phpt': "missing warning", 'magic_methods_004.phpt': "missing warning", 'magic_methods_006.phpt': "missing warning", 'magic_methods_007.phpt': "missing fatal", 'magic_methods_008.phpt': "?", 'magic_methods_009.phpt': "missing warning", 'magic_methods_010.phpt': "missing fatal", 'method_static_var.phpt': "?", 'nowdoc_013.phpt': "missing highlight_string()", 'nowdoc_014.phpt': "missing highlight_string()", 'nowdoc_015.phpt': "missing trigger_error()", 'ns_029.phpt': "?", 'ns_033.phpt': "?", 'ns_035.phpt': "missing ArrayObject", 'ns_036.phpt': "missing ArrayObject", 'ns_051.phpt': "need to do actual constant lookup at compile-time", 'ns_054.phpt': "missing SplObserver", 'ns_056.phpt': "missing SplObserver", 'ns_057.phpt': "notice should be a fatal", 'ns_058.phpt': "notice should be a fatal", 'ns_059.phpt': "missing fatal", 'ns_068.phpt': "missing fatal", 'ns_071.phpt': "?", 'ns_075.phpt': "?", 'ns_076.phpt': "notice should be a fatal", 'ns_077_1.phpt': "notice should be a fatal", 'ns_077_2.phpt': "notice should be a fatal", 'ns_077_3.phpt': "notice should be a fatal", 'ns_077_4.phpt': "notice should be a fatal", 'ns_077_5.phpt': "notice should be a fatal", 'ns_077_6.phpt': "notice should be a fatal", 'ns_077_7.phpt': "notice should be a fatal", 'ns_077_8.phpt': "notice should be a fatal", 'ns_083.phpt': "Namespace decl has to be the first statement", 'ns_086.phpt': "T_DECLARE", 'ns_087.phpt': "?", 'objects_001.phpt': "missing notice", 'objects_005.phpt': "signature check", 'objects_006.phpt': "signature check", 'objects_007.phpt': "signature check", 'objects_010.phpt': "missing strict", 'objects_013.phpt': "missing fatal", 'objects_014.phpt': "missing fatal", 'objects_024.phpt': "accessing static property as non-static", 'objects_025.phpt': "missing fatal error", 'objects_027.phpt': "Cannot access static::", 'offset_array.phpt': "Illegal offset type: resource", 'offset_assign.phpt': "missing fatal error", 'offset_string.phpt': "missing notice: offset cast", 'settype_double.phpt': "?", 'settype_int.phpt': "?", 'settype_object.phpt': "?", 'settype_resource.phpt': "?", 'strict_001.phpt': "Illegal offset type: resource", 'trait_exists_001.phpt': "?", 'trait_exists_002.phpt': "?", 'trait_exists_003.phpt': "?", 'unset_cv03.phpt': "missing notice", 'unset_cv05.phpt': "session_start()", 'unset_cv09.phpt': "missing notice", } markers['ext/reflection'] = { '001.phpt': '?', '002.phpt': '?', '003.phpt': '?', '004.phpt': '?', '005.phpt': '?', '006.phpt': '?', '007.phpt': '?', '008.phpt': '?', '009.phpt': '?', '026.phpt': '?', 'ReflectionClass_CannotClone_basic.phpt': '?', 'ReflectionClass_FileInfo_basic.phpt': '?', 'ReflectionClass_FileInfo_error.phpt': '?', 'ReflectionClass_constructor_002.phpt': '?', 'ReflectionClass_export_basic1.phpt': '?', 'ReflectionClass_export_basic2.phpt': '?', 'ReflectionClass_getConstant_basic.phpt': '?', 'ReflectionClass_getConstant_error.phpt': '?', 'ReflectionClass_getConstructor_basic.phpt': '?', 'ReflectionClass_getDefaultProperties_001.phpt': '?', 'ReflectionClass_getDocComment_001.phpt': '?', 'ReflectionClass_getExtensionName_variation.phpt': '?', 'ReflectionClass_getExtension_variation.phpt': '?', 'ReflectionClass_getInterfaces_001.phpt': '?', 'ReflectionClass_getInterfaces_002.phpt': '?', 'ReflectionClass_getInterfaces_003.phpt': '?', 'ReflectionClass_getMethod_001.phpt': '?', 'ReflectionClass_getMethods_001.phpt': '?', 'ReflectionClass_getMethods_002.phpt': '?', 'ReflectionClass_getMethods_003.phpt': '?', 'ReflectionClass_getModifierNames_basic.phpt': '?', 'ReflectionClass_getModifiers_basic.phpt': '?', 'ReflectionClass_getName_error1.phpt': '?', 'ReflectionClass_getNamespaceName.phpt': '?', 'ReflectionClass_getParentClass.phpt': '?', 'ReflectionClass_getParentClass_001.phpt': '?', 'ReflectionClass_getProperties_001.phpt': '?', 'ReflectionClass_getProperties_003.phpt': '?', 'ReflectionClass_getProperty_001.phpt': '?', 'ReflectionClass_getProperty_002.phpt': '?', 'ReflectionClass_getProperty_003.phpt': '?', 'ReflectionClass_getProperty_004.phpt': '?', 'ReflectionClass_getStaticPropertyValue_001_2_4.phpt': '?', 'ReflectionClass_getStaticPropertyValue_002.phpt': '?', 'ReflectionClass_hasConstant_001.phpt': '?', 'ReflectionClass_hasProperty_001.phpt': '?', 'ReflectionClass_hasProperty_basic.phpt': '?', 'ReflectionClass_implementsInterface_001.phpt': '?', 'ReflectionClass_isCloneable_002.phpt': '?', 'ReflectionClass_isFinal_basic.phpt': '?', 'ReflectionClass_isInstance_basic.phpt': '?', 'ReflectionClass_isInstance_error.phpt': '?', 'ReflectionClass_isInstantiable_variation.phpt': '?', 'ReflectionClass_isInterface_basic.phpt': '?', 'ReflectionClass_isInternal_basic.phpt': '?', 'ReflectionClass_isInternal_error.phpt': '?', 'ReflectionClass_isIterateable_001.phpt': '?', 'ReflectionClass_isIterateable_basic.phpt': '?', 'ReflectionClass_isIterateable_variation1.phpt': '?', 'ReflectionClass_isSubclassOf_002.phpt': '?', 'ReflectionClass_isSubclassOf_basic.phpt': '?', 'ReflectionClass_isSubclassOf_error1.phpt': '?', 'ReflectionClass_isUserDefined_basic.phpt': '?', 'ReflectionClass_isUserDefined_error.phpt': '?', 'ReflectionClass_modifiers_001.phpt': '?', 'ReflectionClass_modifiers_002.phpt': '?', 'ReflectionClass_newInstanceArgs_001.phpt': '?', 'ReflectionClass_newInstanceArgs_002.phpt': '?', 'ReflectionClass_newInstanceWithoutConstructor.phpt': '?', 'ReflectionClass_newInstance_001.phpt': '?', 'ReflectionClass_setStaticPropertyValue_001_2_4.phpt': '?', 'ReflectionClass_setStaticPropertyValue_002.phpt': '?', 'ReflectionClass_toString_001.phpt': '?', 'ReflectionClass_toString_002.phpt': '?', 'ReflectionClass_toString_003.phpt': '?', 'ReflectionExtension_constructor_basic.phpt': '?', 'ReflectionExtension_constructor_error.phpt': '?', 'ReflectionExtension_export_basic.phpt': '?', 'ReflectionExtension_getClassNames_basic.phpt': '?', 'ReflectionExtension_getClassNames_variation1.phpt': '?', 'ReflectionExtension_getClasses_basic.phpt': '?', 'ReflectionExtension_getDependencies_variation2.phpt': '?', 'ReflectionExtension_getName_basic.phpt': '?', 'ReflectionExtension_getVersion_basic.phpt': '?', 'ReflectionExtension_info_basic.phpt': '?', 'ReflectionExtension_isPersistant.phpt': '?', 'ReflectionExtension_isTemporary.phpt': '?', 'ReflectionFunction_001.phpt': '?', 'ReflectionFunction_construct.001.phpt': '?', 'ReflectionFunction_getClosure_basic.phpt': '?', 'ReflectionFunction_getClosure_error.phpt': '?', 'ReflectionFunction_getDocComment.001.phpt': '?', 'ReflectionFunction_getExtension.phpt': '?', 'ReflectionFunction_getExtensionName.phpt': '?', 'ReflectionFunction_getFileName.001.phpt': '?', 'ReflectionFunction_getFileName.002.phpt': '?', 'ReflectionFunction_getNamespaceName.phpt': '?', 'ReflectionMethod_006.phpt': '?', 'ReflectionMethod_basic1.phpt': '?', 'ReflectionMethod_basic2.phpt': '?', 'ReflectionMethod_basic3.phpt': '?', 'ReflectionMethod_basic4.phpt': '?', 'ReflectionMethod_constructor_basic.phpt': '?', 'ReflectionMethod_constructor_error1.phpt': '?', 'ReflectionMethod_constructor_error2.phpt': '?', 'ReflectionMethod_getClosure_basic.phpt': '?', 'ReflectionMethod_getClosure_error.phpt': '?', 'ReflectionMethod_getDocComment_basic.phpt': '?', 'ReflectionMethod_getDocComment_error.phpt': '?', 'ReflectionMethod_getModifiers_basic.phpt': '?', 'ReflectionMethod_getStaticVariables_basic.phpt': '?', 'ReflectionMethod_invokeArgs_basic.phpt': '?', 'ReflectionMethod_invokeArgs_error1.phpt': '?', 'ReflectionMethod_invokeArgs_error2.phpt': '?', 'ReflectionMethod_invokeArgs_error3.phpt': '?', 'ReflectionMethod_invoke_basic.phpt': '?', 'ReflectionMethod_invoke_error1.phpt': '?', 'ReflectionMethod_invoke_error2.phpt': '?', 'ReflectionMethod_returnsReference_basic.phpt': '?', 'ReflectionMethod_setAccessible.phpt': '?', 'ReflectionObject_FileInfo_basic.phpt': '?', 'ReflectionObject_FileInfo_error.phpt': '?', 'ReflectionObject___toString_basic1.phpt': '?', 'ReflectionObject___toString_basic2.phpt': '?', 'ReflectionObject_constructor_basic.phpt': '?', 'ReflectionObject_constructor_error.phpt': '?', 'ReflectionObject_export_basic1.phpt': '?', 'ReflectionObject_export_basic2.phpt': '?', 'ReflectionObject_export_basic3.phpt': '?', 'ReflectionObject_getConstant_basic.phpt': '?', 'ReflectionObject_getConstant_error.phpt': '?', 'ReflectionObject_getConstants_basic.phpt': '?', 'ReflectionObject_getConstants_error.phpt': '?', 'ReflectionObject_getConstructor_basic.phpt': '?', 'ReflectionObject_getConstructor_error.phpt': '?', 'ReflectionObject_getName_basic.phpt': '?', 'ReflectionObject_getName_error.phpt': '?', 'ReflectionObject_getName_error1.phpt': '?', 'ReflectionObject_isInstance_basic.phpt': '?', 'ReflectionObject_isInstance_error.phpt': '?', 'ReflectionObject_isInstantiable_basic.phpt': '?', 'ReflectionObject_isInstantiable_error.phpt': '?', 'ReflectionObject_isInstantiable_variation.phpt': '?', 'ReflectionObject_isInternal_basic.phpt': '?', 'ReflectionObject_isInternal_error.phpt': '?', 'ReflectionObject_isSubclassOf.002.phpt': '?', 'ReflectionObject_isSubclassOf_basic.phpt': '?', 'ReflectionObject_isSubclassOf_error.phpt': '?', 'ReflectionObject_isUserDefined_basic.phpt': '?', 'ReflectionObject_isUserDefined_error.phpt': '?', 'ReflectionParameter_001.phpt': '?', 'ReflectionParameter_002.phpt': '?', 'ReflectionParameter_003.phpt': '?', 'ReflectionParameter_DefaultValueConstant_basic1.phpt': '?', 'ReflectionParameter_DefaultValueConstant_basic2.phpt': '?', 'ReflectionParameter_DefaultValueConstant_error.phpt': '?', 'ReflectionParameter_canBePassedByValue.phpt': '?', 'ReflectionParameter_export_basic.phpt': '?', 'ReflectionParameter_export_error.phpt': '?', 'ReflectionParameter_export_error2.phpt': '?', 'ReflectionParameter_export_error3.phpt': '?', 'ReflectionParameter_getDeclaringFunction_basic.phpt': '?', 'ReflectionParameter_getPosition_basic.phpt': '?', 'ReflectionParameter_invalidMethodInConstructor.phpt': '?', 'ReflectionParameter_isDefault.phpt': '?', 'ReflectionParameter_toString_basic.phpt': '?', 'ReflectionProperty_basic2.phpt': 'missing ::getDocComment()', 'ReflectionProperty_getDocComment_basic.phpt': 'missing ::getDocComment()', 'ReflectionProperty_getDocComment_error.phpt': 'missing ::getDocComment()', 'ReflectionProperty_getModifiers_basic.phpt': 'some flags are missing', 'ReflectionProperty_getValue_error.phpt': '?', 'ReflectionProperty_setAccessible.phpt': '?', 'ReflectionProperty_setValue_error.phpt': '?', 'bug26695.phpt': '?', 'bug29268.phpt': '?', 'bug29523.phpt': '?', 'bug29828.phpt': '?', 'bug29986.phpt': '?', 'bug30148.phpt': '?', 'bug30209.phpt': '?', 'bug30856.phpt': '?', 'bug31651.phpt': '?', 'bug32981.phpt': '?', 'bug33312.phpt': '?', 'bug33389.phpt': '?', 'bug36308.phpt': '?', 'bug37964.phpt': '?', 'bug38132.phpt': '?', 'bug38194.phpt': '?', 'bug38217.phpt': '?', 'bug38465.phpt': '?', 'bug38653.phpt': '?', 'bug38942.phpt': '?', 'bug39884.phpt': '?', 'bug40431.phpt': '?', 'bug40794.phpt': '?', 'bug41061.phpt': '?', 'bug42976.phpt': '?', 'bug43926.phpt': '?', 'bug45571.phpt': '?', 'bug45765.phpt': '?', 'bug46064.phpt': '?', 'bug46064_2.phpt': '?', 'bug46205.phpt': '?', 'bug47254.phpt': '?', 'bug48757.phpt': '?', 'bug49074.phpt': '?', 'bug49719.phpt': '?', 'bug51905.phpt': 'Call to undefined method ReflectionParameter::isDefaultValueAvailable()', 'bug51911.phpt': 'Call to undefined method ReflectionParameter::isDefaultValueAvailable()', 'bug52057.phpt': '?', 'bug52854.phpt': '?', 'bug53366.phpt': '?', 'bug60357.phpt': '?', 'bug60367.phpt': '?', 'bug61388.phpt': '?', 'bug62384.phpt': '?', 'bug62715.phpt': '?', 'bug63399.phpt': '?', 'bug63614.phpt': '?', 'bug64239.phpt': '?', 'closures_001.phpt': '?', 'closures_002.phpt': '?', 'closures_003.phpt': '?', 'closures_003_v1.phpt': '?', 'closures_004.phpt': '?', 'parameters_001.phpt': '?', 'parameters_002.phpt': '?', 'property_exists.phpt': '?', 'traits001.phpt': '?', 'traits002.phpt': '?', 'traits003.phpt': '?', 'traits004.phpt': '?', 'traits005.phpt': '?', } markers[spl_test_dir] = { 'array_001.phpt': "missing notice on unset()", 'array_002.phpt': "wrong instance number", 'array_008.phpt': "Missing ArrayObject", 'array_010.phpt': "Missing ArrayObject", 'array_011.phpt': "Missing LimitIterator", 'array_012.phpt': "Missing ArrayIterator", 'array_013.phpt': "?", 'array_014.phpt': "Missing ArrayIterator", 'array_015.phpt': "Missing ArrayObject", 'array_017.phpt': "Missing ArrayObject", 'array_019.phpt': "Missing ArrayObject", 'array_022.phpt': "SKIP: infinite loop when $ao->storage === $ao", 'array_023.phpt': "Missing ArrayObject", 'array_024.phpt': "Missing ArrayObject", 'array_025.phpt': "Missing ArrayObject", 'array_026.phpt': "Missing ArrayObject", 'arrayObject_asort_basic1.phpt': "Missing ArrayObject", 'arrayObject_asort_basic2.phpt': "Missing ArrayObject", 'arrayObject_clone_basic1.phpt': "Missing ArrayObject", 'arrayObject_clone_basic2.phpt': "Missing ArrayObject", 'arrayObject_clone_basic3.phpt': "Missing ArrayObject", 'arrayObject___construct_basic1.phpt': "Missing ArrayObject", 'arrayObject___construct_basic2.phpt': "Missing ArrayObject", 'arrayObject___construct_basic3.phpt': "Missing ArrayObject", 'arrayObject___construct_basic4.phpt': "Missing ArrayObject", 'arrayObject___construct_basic5.phpt': "Missing ArrayObject", 'arrayObject___construct_basic6.phpt': "Missing ArrayObject", 'arrayObject___construct_error1.phpt': "Missing ArrayObject", 'arrayObject___construct_error2.phpt': "Missing ArrayObject", 'arrayObject_count_basic1.phpt': "Missing ArrayObject", 'arrayObject_exchangeArray_basic1.phpt': "Missing ArrayObject", 'arrayObject_exchangeArray_basic2.phpt': "Missing ArrayObject", 'arrayObject_exchangeArray_basic3.phpt': "Missing ArrayObject", 'arrayObject_getFlags_basic1.phpt': "Missing ArrayObject", 'arrayObject_getFlags_basic2.phpt': "Missing ArrayObject", 'arrayObject_getIteratorClass_basic1.phpt': "Missing ArrayObject", 'arrayObject_ksort_basic1.phpt': "Missing ArrayObject", 'arrayObject_ksort_basic2.phpt': "Missing ArrayObject", 'arrayObject_magicMethods1.phpt': "Missing ArrayObject", 'arrayObject_magicMethods3.phpt': "Missing ArrayObject", 'arrayObject_magicMethods4.phpt': "Missing ArrayObject", 'arrayObject_magicMethods6.phpt': "Missing ArrayObject", 'arrayObject_natcasesort_basic1.phpt': "Missing ArrayObject", 'arrayObject_natsort_basic1.phpt': "Missing ArrayObject", 'arrayObject_setFlags_basic1.phpt': "Missing ArrayObject", 'arrayObject_setFlags_basic2.phpt': "Missing ArrayObject", 'arrayObject_setIteratorClass_error1.phpt': "Missing ArrayObject", 'arrayObject_uasort_basic1.phpt': "Missing ArrayObject", 'arrayObject_uasort_error1.phpt': "Missing ArrayObject", 'arrayObject_uksort_basic1.phpt': "Missing ArrayObject", 'arrayObject_uksort_error1.phpt': "Missing ArrayObject", 'ArrayObject_unserialize_empty_string.phpt': "Missing ArrayObject", 'bug31346.phpt': "?", 'bug31348.phpt': "?", 'bug33136.phpt': "?", 'bug34548.phpt': "?", 'bug36941.phpt': "?", 'bug37457.phpt': "Hippy calls current() and key() only when needed", 'bug38325.phpt': "?", 'bug38618.phpt': "?", 'bug40036.phpt': "?", 'bug41528.phpt': "?", 'bug41691.phpt': "?", 'bug41828.phpt': "Missing RecursiveIteratorIterator", 'bug42654.phpt': "?", 'bug42703.phpt': "?", 'bug44615.phpt': "?", 'bug45216.phpt': "Missing SplFileObject::fgetss", 'bug45614.phpt': "?", 'bug45622b.phpt': "?", 'bug45622.phpt': "?", 'bug45826.phpt': "?", 'bug46088.phpt': "?", 'bug46115.phpt': "?", 'bug46160.phpt': "?", 'bug48361.phpt': "?", 'bug49263.phpt': "?", 'bug49723.phpt': "?", 'bug50579.phpt': "?", 'bug51119.phpt': "?", 'bug51374.phpt': "Missing SplFileObject::setFileClass", 'bug51532.phpt': "Missing SplFileObject::fscanf", 'bug52238.phpt': "?", 'bug52573.phpt': "?", 'bug52861.phpt': "?", 'bug53071.phpt': "?", 'bug53144.phpt': "?", 'bug53362.phpt': "?", 'bug53515.phpt': "?", 'bug54281.phpt': "?", 'bug54291.phpt': "?", 'bug54304.phpt': "?", 'bug54323.phpt': "?", 'bug54384.phpt': "Missing IteratorIterator", 'bug54970.phpt': "?", 'bug54971.phpt': "?", 'bug60201.phpt': "?", 'bug61347.phpt': "?", 'bug61418.phpt': "Missing RegexIterator", 'bug61453.phpt': "?", 'bug61527.phpt': "?", 'bug61697.phpt': "?", 'bug61828.phpt': "?", 'bug62073.phpt': "?", 'bug62262.phpt': "?", 'bug62433.phpt': "Missing iterator_to_array", 'bug62616.phpt': "?", 'bug62672.phpt': "?", 'bug62904.phpt': "?", 'bug62978.phpt': "?", 'bug63680.phpt': "?", 'bug64106.phpt': "?", 'bug64264.phpt': "?", 'bug65328.phpt': "?", 'CallbackFilterIteratorTest-002.phpt': "Missing CallbackFilterIterator", 'CallbackFilterIteratorTest.phpt': "Missing CallbackFilterIterator", 'class_implements_basic2.phpt': "Missing class_implements", 'class_implements_basic.phpt': "Missing class_implements", 'class_implements_variation1.phpt': "Missing class_implements", 'class_implements_variation2.phpt': "Missing class_implements", 'class_implements_variation.phpt': "Missing class_implements", 'class_uses_basic2.phpt': "Missing class_uses", 'class_uses_basic.phpt': "Missing class_uses", 'class_uses_variation1.phpt': "Missing class_uses", 'class_uses_variation2.phpt': "Missing class_uses", 'class_uses_variation.phpt': "Missing class_uses", 'countable_class_basic1.phpt': "Missing ReflectionClass::export", 'countable_count_variation1.phpt': "?", 'DirectoryIterator_empty_constructor.phpt': "No frames for builtin methods", 'DirectoryIterator_getInode_error.phpt': "No frames for builtin methods", 'dit_001.phpt': "Missing RecursiveDirectoryIterator's private properties", 'dit_002.phpt': "Missing ReflectionClass", 'dllist_001.phpt': "Missing SplDoublyLinkedList", 'dllist_002.phpt': "Missing SplDoublyLinkedList", 'dllist_003.phpt': "Missing SplDoublyLinkedList", 'dllist_004.phpt': "Missing SplStack", 'dllist_005.phpt': "Missing SplQueue", 'dllist_006.phpt': "Missing SplDoublyLinkedList", 'dllist_007.phpt': "Missing SplDoublyLinkedList", 'dllist_008.phpt': "Missing SplDoublyLinkedList", 'dllist_010.phpt': "Missing SplDoublyLinkedList", 'dllist_011.phpt': "Missing SplDoublyLinkedList", 'dllist_012.phpt': "Missing SplDoublyLinkedList", 'dllist_013.phpt': "Missing SplDoublyLinkedList", 'dllist_memleak.phpt': "Missing SplDoublyLinkedList", 'fileobject_getfileinfo_basic.phpt': "Missing SplFileObject::getFileInfo", 'fileobject_getmaxlinelen_basic.phpt': "Missing SplFileObject::setMaxLineLen", 'fileobject_setmaxlinelen_basic.phpt': "Missing SplFileObject::setMaxLineLen", 'fileobject_setmaxlinelen_error001.phpt': "Missing SplFileObject::setMaxLineLen", 'fileobject_setmaxlinelen_error002.phpt': "Missing SplFileObject::setMaxLineLen", 'fileobject_setmaxlinelen_error003.phpt': "Missing SplFileObject::setMaxLineLen", 'fixedarray_001.phpt': "Missing SplFixedArray", 'fixedarray_002.phpt': "Missing SplFixedArray", 'fixedarray_003.phpt': "Missing SplFixedArray", 'fixedarray_004.phpt': "Missing SplFixedArray", 'fixedarray_005.phpt': "Missing SplFixedArray", 'fixedarray_006.phpt': "Missing SplFixedArray", 'fixedarray_007.phpt': "Missing SplFixedArray", 'fixedarray_008.phpt': "Missing SplFixedArray", 'fixedarray_009.phpt': "Missing SplFixedArray", 'fixedarray_010.phpt': "Missing SplFixedArray", 'fixedarray_011.phpt': "Missing SplFixedArray", 'fixedarray_012.phpt': "Missing SplFixedArray", 'fixedarray_013.phpt': "Missing SplFixedArray", 'fixedarray_014.phpt': "Missing SplFixedArray", 'fixedarray_015.phpt': "Missing SplFixedArray", 'fixedarray_016.phpt': "Missing SplFixedArray", 'fixedarray_017.phpt': "Missing SplFixedArray", 'fixedarray_018.phpt': "Missing SplFixedArray", 'fixedarray_019.phpt': "Missing SplFixedArray", 'fixedarray_020.phpt': "Missing SplFixedArray", 'fixedarray_021.phpt': "Missing SplFixedArray", 'heap_001.phpt': "Missing SplMaxHeap", 'heap_002.phpt': "Missing SplMinHeap", 'heap_003.phpt': "Missing SplHeap", 'heap_004.phpt': "Missing SplHeap", 'heap_005.phpt': "Missing SplMinHeap", 'heap_006.phpt': "Missing SplMaxHeap", 'heap_007.phpt': "Missing SplMaxHeap", 'heap_008.phpt': "Missing SplMaxHeap", 'heap_009.phpt': "Missing SplMinHeap", 'heap_010.phpt': "Missing SplMaxHeap", 'heap_011.phpt': "Missing SplMinHeap", 'heap_012.phpt': "Missing SplMaxHeap", 'heap_corruption.phpt': "Missing SplHeap", 'heap_current_variation_001.phpt': "Missing SplHeap", 'heap_isempty_variation_001.phpt': "Missing SplHeap", 'heap_it_current_empty.phpt': "Missing SplMinHeap", 'heap_top_variation_001.phpt': "Missing SplMinHeap", 'heap_top_variation_002.phpt': "Missing SplMinHeap", 'heap_top_variation_003.phpt': "Missing SplMinHeap", 'iterator_001.phpt': "Missing LimitIterator", 'iterator_003.phpt': "Missing CachingIterator", 'iterator_004.phpt': "Missing LimitIterator", 'iterator_006.phpt': "Missing SimpleXML", 'iterator_007.phpt': "Missing NoRewindIterator", 'iterator_008.phpt': "Missing InfiniteIterator", 'iterator_009.phpt': "Missing EmptyIterator", 'iterator_010.phpt': "Missing LimitIterator", 'iterator_011.phpt': "Missing LimitIterator", 'iterator_012.phpt': "Missing NoRewindIterator", 'iterator_013.phpt': "Missing AppendIterator", 'iterator_014.phpt': "Missing RecursiveArrayIterator", 'iterator_015.phpt': "missing RecursiveArrayIterator", 'iterator_016.phpt': "missing RecursiveArrayIterator", 'iterator_017.phpt': "Missing LimitIterator", 'iterator_018.phpt': "Missing LimitIterator", 'iterator_019.phpt': "Missing NoRewindIterator", 'iterator_020.phpt': "Missing AppendIterator", 'iterator_021.phpt': "Missing RecursiveArrayIterator", 'iterator_022.phpt': "Missing RecursiveArrayIterator", 'iterator_023.phpt': "Missing RecursiveArrayIterator", 'iterator_024.phpt': "Missing RecursiveArrayIterator", 'iterator_025.phpt': "Missing RecursiveArrayIterator", 'iterator_026.phpt': "Missing RecursiveArrayIterator", 'iterator_027.phpt': "Missing RecursiveArrayIterator", 'iterator_028.phpt': "Missing RecursiveArrayIterator", 'iterator_029.phpt': "Missing RegexIterator", 'iterator_030.phpt': "Missing EmptyIterator", 'iterator_032.phpt': "Missing Iterator", 'iterator_033.phpt': "Missing ParentIterator", 'iterator_034.phpt': "missing RecursiveArrayIterator", 'iterator_035.phpt': "?", 'iterator_036.phpt': "?", 'iterator_037.phpt': "?", 'iterator_038.phpt': "?", 'iterator_039.phpt': "?", 'iterator_040.phpt': "Missing RecursiveFilterIterator", 'iterator_041a.phpt': "?", 'iterator_041b.phpt': "?", 'iterator_041.phpt': "?", 'iterator_042.phpt': "?", 'iterator_043.phpt': "?", 'iterator_044.phpt': "?", 'iterator_045.phpt': "?", 'iterator_046.phpt': "?", 'iterator_047.phpt': "missing RecursiveArrayIterator", 'iterator_048.phpt': "missing RecursiveRegexIterator", 'iterator_049b.phpt': "?", 'iterator_049.phpt': "?", 'iterator_050.phpt': "?", 'iterator_051.phpt': "?", 'iterator_052.phpt': "?", 'iterator_053.phpt': "?", 'iterator_054.phpt': "?", 'iterator_055.phpt': "?", 'iterator_056.phpt': "?", 'iterator_059.phpt': "?", 'iterator_060.phpt': "?", 'iterator_061.phpt': "?", 'iterator_062.phpt': "should throw exception", 'iterator_063.phpt': "?", 'iterator_064.phpt': "?", 'iterator_065.phpt': "?", 'iterator_066.phpt': "?", 'iterator_068.phpt': "?", 'iterator_count.phpt': "?", 'iterator_to_array_nonscalar_keys.phpt': "?", 'iterator_to_array.phpt': "?", 'limititerator_seek.phpt': "?", 'multiple_iterator_001.phpt': "?", 'observer_001.phpt': "?", 'observer_002.phpt': "?", 'observer_003.phpt': "?", 'observer_004.phpt': "?", 'observer_005.phpt': "?", 'observer_006.phpt': "?", 'observer_007.phpt': "?", 'observer_008.phpt': "?", 'observer_009.phpt': "?", 'pqueue_001.phpt': "?", 'pqueue_002.phpt': "?", 'pqueue_003.phpt': "?", 'pqueue_004.phpt': "?", 'pqueue_compare_basic.phpt': "?", 'pqueue_compare_error.phpt': "?", 'pqueue_current_error.phpt': "?", 'RecursiveCallbackFilterIteratorTest.phpt': "?", 'RecursiveDirectoryIterator_getSubPath_basic.phpt': "?", 'RecursiveDirectoryIterator_getSubPathname_basic.phpt': "?", 'recursiveIteratorIterator_beginchildren_error.phpt': "missing RecursiveArrayIterator", 'recursiveiteratoriterator_beginiteration_basic.phpt': "missing RecursiveArrayIterator", 'recursiveIteratorIterator_callHasChildren_error.phpt': "missing RecursiveArrayIterator", 'recursiveIteratorIterator_endchildren_error.phpt': "missing RecursiveArrayIterator", 'recursiveiteratoriterator_enditeration_basic.phpt': "missing RecursiveArrayIterator", 'recursiveiteratoriterator_getsubiterator_basic.phpt': "missing RecursiveArrayIterator", 'recursiveiteratoriterator_getsubiterator_error.phpt': "missing RecursiveArrayIterator", 'recursiveiteratoriterator_getsubiterator_variation_002.phpt': "missing RecursiveArrayIterator", 'recursiveiteratoriterator_getsubiterator_variation_003.phpt': "missing RecursiveArrayIterator", 'recursiveiteratoriterator_getsubiterator_variation.phpt': "missing RecursiveArrayIterator", 'recursiveiteratoriterator_nextelement_basic.phpt': "missing RecursiveArrayIterator", 'recursiveIteratorIterator_nextelement_error.phpt': "missing RecursiveArrayIterator", 'recursive_tree_iterator_001.phpt': "?", 'recursive_tree_iterator_002.phpt': "?", 'recursive_tree_iterator_003.phpt': "?", 'recursive_tree_iterator_004.phpt': "?", 'recursive_tree_iterator_005.phpt': "?", 'recursive_tree_iterator_006.phpt': "?", 'recursive_tree_iterator_007.phpt': "?", 'recursive_tree_iterator_008.phpt': "?", 'recursive_tree_iterator_setpostfix.phpt': "?", 'recursive_tree_iterator_setprefixpart.phpt': "?", 'regexIterator_flags_basic.phpt': "?", 'regexiterator_getpregflags.phpt': "?", 'regexiterator_getregex.phpt': "?", 'regexIterator_mode_basic.phpt': "?", 'regexiterator_setflags_exception.phpt': "?", 'regexIterator_setMode_error.phpt': "?", 'regexiterator_setpregflags_exception.phpt': "?", 'regexiterator_setpregflags.phpt': "?", 'spl_001.phpt': "?", 'spl_003.phpt': "?", 'spl_004.phpt': "missing RecursiveArrayIterator", 'spl_005.phpt': "?", 'spl_006.phpt': "?", 'spl_007.phpt': "?", 'SplArray_fromArray.phpt': "?", 'spl_autoload_001.phpt': "?", 'spl_autoload_002.phpt': "?", 'spl_autoload_003.phpt': "?", 'spl_autoload_004.phpt': "?", 'spl_autoload_005.phpt': "?", 'spl_autoload_006.phpt': "?", 'spl_autoload_007.phpt': "?", 'spl_autoload_008.phpt': "?", 'spl_autoload_011.phpt': "?", 'spl_autoload_012.phpt': "?", 'spl_autoload_013.phpt': "?", 'spl_caching_iterator_constructor_flags.phpt': "?", 'spl_cachingiterator_setFlags_basic.phpt': "?", 'spl_cachingiterator___toString_basic.phpt': "?", 'spl_classes.phpt': "?", 'SplDoublyLinkedList_add_invalid_offset.phpt': "?", 'SplDoublyLinkedList_add_missing_parameter1.phpt': "?", 'SplDoublyLinkedList_add_missing_parameter2.phpt': "?", 'SplDoublyLinkedList_add_null_offset.phpt': "?", 'SplDoublyLinkedList_bottom_pass_array.phpt': "?", 'SplDoublyLinkedList_bottom_pass_float.phpt': "?", 'SplDoublyLinkedList_bottom_pass_integer.phpt': "?", 'SplDoublyLinkedList_bottom_pass_null.phpt': "?", 'SplDoublyLinkedList_count_param_SplDoublyLinkedList.phpt': "?", 'SplDoublyLinkedList_count.phpt': "?", 'SplDoublyLinkedList_current_empty.phpt': "?", 'SplDoublyLinkedList_current.phpt': "?", 'SplDoublyLinkedList_debug-info.phpt': "?", 'SplDoublyLinkedList_getIteratorMode_error.phpt': "?", 'SplDoublyLinkedList_getIteratorMode.phpt': "?", 'SplDoublyLinkedList_isEmpty_empty.phpt': "?", 'SplDoublyLinkedList_isEmpty_empty-with-parameter.phpt': "?", 'SplDoublyLinkedList_isEmpty_not-empty.phpt': "?", 'SplDoublyLinkedList_isEmpty_not-empty-with-parameter.phpt': "?", 'SplDoublyLinkedList_lifoMode.phpt': "?", 'SplDoublyLinkedList_offsetExists_invalid_parameter.phpt': "?", 'SplDoublyLinkedList_offsetExists_success.phpt': "?", 'SplDoublyLinkedList_offsetGet_empty.phpt': "?", 'SplDoublyLinkedList_offsetGet_missing_param.phpt': "?", 'SplDoublyLinkedList_offsetGet_param_array.phpt': "?", 'SplDoublyLinkedList_offsetGet_param_string.phpt': "?", 'SplDoublyLinkedList_offsetSet_invalid_parameter.phpt': "?", 'SplDoublyLinkedList_offsetSet_one_invalid_parameter.phpt': "?", 'SplDoublylinkedlist_offsetunset_first002.phpt': "?", 'SplDoublylinkedlist_offsetunset_first.phpt': "?", 'SplDoublyLinkedList_offsetUnset_greater_than_elements.phpt': "?", 'SplDoublylinkedlist_offsetunset_last.phpt': "?", 'SplDoublyLinkedList_offsetUnset_negative-parameter.phpt': "?", 'SplDoublyLinkedList_offsetUnset_parameter-larger-num-elements.phpt': "?", 'SplDoublyLinkedList_pop_noParams.phpt': "?", 'SplDoublyLinkedList_pop_params.phpt': "?", 'SplDoublyLinkedList_push_missing_parameter.phpt': "?", 'SplDoublyLinkedList_serialization.phpt': "?", 'SplDoublyLinkedList_setIteratorMode_param_SplDoublyLinkedList.phpt': "?", 'splDoublyLinkedList_shift_noParams.phpt': "?", 'SplDoublyLinkedList_top_pass_array.phpt': "?", 'SplDoublyLinkedList_top_pass_float.phpt': "?", 'SplDoublyLinkedList_top_pass_integer.phpt': "?", 'SplDoublyLinkedList_top_pass_null.phpt': "?", 'SplDoublyLinkedList_unshift_missing_parameter.phpt': "?", 'SplFileInfo_getGroup_error.phpt': "No frames for builtin methods", 'SplFileInfo_getInode_error.phpt': "No frames for builtin methods", 'SplFileInfo_getOwner_error.phpt': "No frames for builtin methods", 'SplFileInfo_getPerms_error.phpt': "No frames for builtin methods", 'SplFileObject_fflush_basic_001.phpt': "Missing stream_wrapper_register", 'SplFileObject_fgetcsv_basic.phpt': "Missing SplFileObject", 'SplFileObject_fgetcsv_delimiter_basic.phpt': "Missing SplFileObject", 'SplFileObject_fgetcsv_delimiter_error.phpt': "Missing SplFileObject", 'SplFileObject_fgetcsv_enclosure_basic.phpt': "Missing SplFileObject", 'SplFileObject_fgetcsv_enclosure_error.phpt': "Missing SplFileObject", 'SplFileObject_fgetcsv_escape_basic.phpt': "Missing SplFileObject", 'SplFileObject_fgetcsv_escape_default.phpt': "Missing SplFileObject", 'SplFileObject_fgetcsv_escape_error.phpt': "Missing SplFileObject", 'SplFileObject_fpassthru_basic.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv_002.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv_error.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv_variation10.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv_variation11.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv_variation12.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv_variation13.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv_variation14.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv_variation1.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv_variation5.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv_variation6.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv_variation7.phpt': "Missing SplFileObject", 'SplFileObject_fputcsv_variation8.phpt': "Missing SplFileObject", 'SplFileObject_fscanf_basic.phpt': "Missing SplFileObject", 'SplFileObject_ftruncate_error_001.phpt': "Missing stream_wrapper_register", 'SplFileObject_getCsvControl_basic_001.phpt': "Missing SplFileObject", 'SplFileObject_seek_error_001.phpt': "problem with rising errors", 'SplFileObject_setCsvControl_basic.phpt': "Missing SplFileObject", 'SplFileObject_setCsvControl_error001.phpt': "Missing SplFileObject", 'SplFileObject_setCsvControl_error002.phpt': "Missing SplFileObject", 'SplFileObject_setCsvControl_error003.phpt': "Missing SplFileObject", 'SplFileObject_setCsvControl_variation001.phpt': "Missing SplFileObject", 'SplFixedArray__construct_param_array.phpt': "?", 'SplFixedArray__construct_param_float.phpt': "?", 'SplFixedArray__construct_param_null.phpt': "?", 'SplFixedArray_construct_param_SplFixedArray.phpt': "?", 'SplFixedArray__construct_param_string.phpt': "?", 'SplFixedArray_count_checkParams.phpt': "?", 'SplFixedArray_count_param_int.phpt': "?", 'SplFixedArray_current_param.phpt': "?", 'SplFixedArray_fromarray_indexes.phpt': "?", 'SplFixedArray_fromArray_invalid_parameter_001.phpt': "?", 'SplFixedArray_fromArray_invalid_parameter_002.phpt': "?", 'SplFixedArray_fromarray_non_indexes.phpt': "?", 'SplFixedArray_fromarray_param_boolean.phpt': "?", 'SplFixedArray_fromarray_param_multiarray.phpt': "?", 'SplFixedArray_getSize_pass_param.phpt': "?", 'SplFixedArray_key_param.phpt': "?", 'SplFixedArray_key_setsize.phpt': "?", 'SplFixedArray_next_param.phpt': "?", 'SplFixedArray_offsetExists_invalid_parameter.phpt': "?", 'splfixedarray_offsetExists_larger.phpt': "?", 'SplFixedArray_offsetExists_less_than_zero.phpt': "?", 'SplFixedArray_offsetGet_invalid_parameter.phpt': "?", 'SplFixedArray_offsetSet_invalid_parameter.phpt': "?", 'SplFixedArray_offsetSet_one_invalid_parameter.phpt': "?", 'SplFixedArray_offsetUnset_invalid_parameter.phpt': "?", 'SplFixedArray_offsetUnset_string.phpt': "?", 'SplFixedArray_rewind_param.phpt': "?", 'SplFixedArray_serialize.phpt': "?", 'SplFixedArray_setsize_001.phpt': "?", 'SplFixedArray_setSize_filled_to_smaller.phpt': "?", 'SplFixedArray_setsize_grow.phpt': "?", 'SplFixedArray_setSize_param_array.phpt': "?", 'SplFixedArray_setSize_param_float.phpt': "?", 'SplFixedArray_setSize_param_null.phpt': "?", 'SplFixedArray_setSize_reduce.phpt': "?", 'SplFixedArray_setsize_shrink.phpt': "?", 'SplFixedArray_toArray_with-params.phpt': "?", 'spl_heap_count_basic.phpt': "?", 'spl_heap_count_error.phpt': "?",
{'commit': 'diff --git a/AUTHORS b/AUTHORS\nindex 6fc02c4d..0258cc4c 100644\n--- a/AUTHORS\n+++ b/AUTHORS\n@@ -9,6 +9,7 @@ Sebastian Pawluś\n Ashwini Oruganti\n Edd Barrett\n \n+Sebastian Kreft\n \n pieces were copied from the PyPy project, copyrighted by the PyPy team and\n available under MIT license\ndiff --git a/hippy/module/standard/misc/funcs.py b/hippy/module/standard/misc/funcs.py\nindex 5923b7cb..48058a7c 100644\n--- a/hippy/module/standard/misc/funcs.py\n+++ b/hippy/module/standard/misc/funcs.py\n@@ -117,11 +117,17 @@ def show_source():\n     return NotImplementedError()\n \n \n-@wrap([\'interp\', int])\n+@wrap([\'interp\', int], error=False)\n def sleep(interp, seconds):\n     """ Delay execution"""\n+    if seconds < 0:\n+        interp.warn("sleep(): Number of seconds must be greater than or equal to 0")\n+        return interp.space.w_False\n+\n     import time\n     time.sleep(seconds)\n+    # TODO: when a signal is received and a handler is defined, the remaining\n+    # number of seconds as float should be returned.\n     return interp.space.newint(0)\n \n \n@@ -172,6 +178,12 @@ def unpack():\n     return NotImplementedError()\n \n \n-def usleep():\n+@wrap([\'interp\', int])\n+def usleep(interp, microseconds):\n     """ Delay execution in microseconds"""\n-    return NotImplementedError()\n+    if microseconds < 0:\n+        interp.warn("usleep(): Number of microseconds must be greater than or equal to 0")\n+        return interp.space.w_False\n+\n+    import time\n+    time.sleep(microseconds / 1000000.0)\ndiff --git a/test_phpt/conftest.py b/test_phpt/conftest.py\nindex c573daa8..ddeb7747 100644\n--- a/test_phpt/conftest.py\n+++ b/test_phpt/conftest.py\n@@ -1090,10 +1090,6 @@ markers[general_test_dir] = {\n     \'proc_open02.phpt\': "not implemented",\n     \'set_magic_quotes_runtime_basic.phpt\': "not implemented",\n     \'set_magic_quotes_runtime_error.phpt\': "not implemented",\n-    # \'sleep_basic.phpt\': "not implemented",\n-    \'sleep_error.phpt\': "not implemented",\n-    \'usleep_basic.phpt\': "not implemented",\n-    \'usleep_error.phpt\': "not implemented",\n     \'var_dump_64bit.phpt\': "not implemented",\n }\n \n', 'commit_subject': 'Merge pull request #32 from sk-/master', 'repo_name': 'hippyvm/hippyvm', 'committer': {'name': 'Rafał Gałczyński', 'email': 'c23f1c8bb5ba180a5e5cc5deedb446bca95b21af@gmail.com', 'time_sec': '1407929748', 'tz_offset': '120', 'date': {'seconds': '1407929748'}}, 'commit_tree': '66b33a0a913dc8e1221f5fcc3969cb17001c79dc', 'commit_message': 'Merge pull request #32 from sk-/master\n\nFixed error checking on sleep and implemented usleep', 'language_name': 'PHP', 'license': 'mit', 'hunks': '@@ -1090,10 +1090,6 @@ markers[general_test_dir] = {\n     \'proc_open02.phpt\': "not implemented",\n     \'set_magic_quotes_runtime_basic.phpt\': "not implemented",\n     \'set_magic_quotes_runtime_error.phpt\': "not implemented",\n-    # \'sleep_basic.phpt\': "not implemented",\n-    \'sleep_error.phpt\': "not implemented",\n-    \'usleep_basic.phpt\': "not implemented",\n-    \'usleep_error.phpt\': "not implemented",\n     \'var_dump_64bit.phpt\': "not implemented",\n }\n \n', 'addition_count': 0, 'deletion_count': 4, 'src_file': 'a/test_phpt/conftest.py', 'tgt_file': 'b/test_phpt/conftest.py', 'file_extension': '.py', 'before_file': 'import py\nfrom _pytest.main import Collector, Item\nimport os\nimport sys\nimport re\nimport locale\nfrom collections import OrderedDict\n\nfrom hippy.hippyoption import (\n    enable_all_optional_extensions, is_optional_extension_enabled)\n\nenable_all_optional_extensions()\n\nfrom hippy.config import load_ini\n\nif __name__ == \'__main__\':\n    sys.path.insert(\n        0,\n        os.path.dirname(\n            os.path.dirname(\n                os.path.dirname(os.path.abspath(__file__)))))\n\nfrom prettytable import PrettyTable\nfrom hippy.objspace import ObjSpace\nfrom hippy.constants import E_HIPPY_WARN\nfrom hippy.interpreter import Interpreter\nfrom hippy.error import ExplicitExitException, FatalError\nfrom hippy.objects.instanceobject import global_counter\nfrom hippy.module.session.session import Session\nfrom urlparse import parse_qs\nfrom hippy.objects.reference import W_Reference\n\n\nslow = "SKIP: Too slow!"\ncheck_sign_only = "check_sign_only"\n\n\nWIDTH = os.environ.get("COLUMNS", 300)\nCOL_WIDTH = int(WIDTH) / 2 - 5\n\nIS_TRAVIS = os.getenv(\'TRAVIS\') == \'true\'\n\n\ndef parse_phpt(fname):\n    skipif_src = []\n    ini_section = []\n    src = []\n    exp = []\n    tname = None\n    request = {}\n    clean = []\n    st = None\n    IGNORED = 999\n    state = {\'TEST\': -1, \'FILE\': 0, \'FILEEOF\': 0, \'EXPECT\': 1, \'EXPECTF\': 1,\n             \'SKIPIF\': 5, \'INI\': 2, \'CLEAN\': 3, \'CREDITS\': IGNORED,\n             \'CREDIT\': IGNORED, \'GET\': 6, \'POST\': 7, \'COOKIE\': 8,\n             \'XFAIL\': 9, \'DESCRIPTION\': IGNORED}\n    with open(fname) as f:\n        lines = f.readlines()\n    for l in lines:\n        m = re.match(\'--([A-Z_]+)--$\', l.strip())\n        if m:\n            section = m.group(1)\n            try:\n                st = state[section]\n                continue\n            except KeyError:\n                if section in [\'EXPECTREGEX\', \'POST_RAW\', \'ENV\', \'ARGS\']:\n                    py.test.skip("Section %s not handled" % section)\n                else:\n                    raise ValueError(\'Unknown phpt section header: %s\' % section)\n        if st == -1 and tname is None:\n            tname = l.strip()\n        elif st == 0:\n            src.append(l)\n        elif st == 5:\n            skipif_src.append(l)\n        elif st == 1:\n            # XXX: Hack!\n            l = re.sub("on line \\d+$", "on line %d", l)\n            exp.append(l)\n        elif st == 2:\n            ini_section.append(l)\n        elif st == 3:\n            clean.append(l)\n        elif st == 6:\n            l = l.strip()\n            request[\'_GET\'] = parse_qs(l)\n        elif st == 7:\n            l = l.strip()\n            request[\'_POST\'] = parse_qs(l)\n        elif st == 8:\n            l = l.strip()\n            request[\'_COOKIE\'] = parse_qs(l)\n        elif st == 9:\n            py.test.skip("PHP XFAIL: %s" % l)\n\n    return (tname, "".join(skipif_src), "".join(src),\n            [l for l in exp if l.strip() != ""], "\\n".join(ini_section),\n            " ".join(clean),\n            request)\n\n\nclass MockStdout(object):\n    def __init__(self):\n        self._lines = []\n        self._buffer = []\n\n    def __iter__(self):\n        return iter(self._lines)\n\n    def __getitem__(self, n):\n        return self._lines[n]\n\n    def flush(self):\n        _s = "".join(self._buffer)\n        self._lines.append(_s)\n        self._buffer = []\n\n    def append(self, str):\n        if str:\n            if str[-1] != \'\\n\':\n                self._buffer.append(str)\n            else:\n                self._buffer.append(str)\n                self.flush()\n\n\nclass MockInterpreter(Interpreter):\n    """ Like the interpreter, but captures stdout\n    """\n    def __init__(self, space, output):\n        Interpreter.__init__(self, space)\n        self.output = output\n        global_counter.instance_counter = 1\n\n    def _writestr(self, string):\n        self.output.append(string)\n\n    def err_write(self, string):\n        self.writestr(\'\\n\' + string)\n\n    def _log_traceback(self, filename, funcname, line, source):\n        pass\n\n    def hippy_warn(self, msg):\n        if msg.startswith(\'printf(): Unknown format char\'):\n\n            # py.test.skip(\'Missing features in printf()\')\n            pass\n\n    def log_error(self, level, msg):\n        if level != E_HIPPY_WARN:\n            Interpreter.log_error(self, level, msg)\n\n\nclass PhptRunner(object):\n\n    def __init__(self, ini, filename, request):\n        self.filename = filename\n        self.request = request\n        self.ini = ini\n\n    def prepare_globals(self, space, interp):\n        globals = interp.globals\n        for var, values in self.request.items():\n            rdict_w = OrderedDict()\n            for k, v in values.items():\n                rdict_w[k] = space.wrap(v[0])\n\n            globals.set_var(var,\n                            W_Reference(space.new_array_from_rdict(rdict_w)))\n\n    def run(self, _source):\n        self.space = ObjSpace()\n\n        stdout = MockStdout()\n        interp = MockInterpreter(self.space, stdout)\n        load_ini(interp, self.ini)\n        interp.setup(cgi=False, argv=[self.filename])\n        interp.session = Session(interp)\n        try:\n            bc = interp.compile_bytecode(self.filename, _source)\n            if bc is not None:\n                interp.cached_files[self.filename] = bc\n                interp.run_main(self.space, bc, top_main=True)\n        except FatalError:\n            pass\n        except ExplicitExitException as exc:\n            stdout.flush()\n            stdout.append(exc.message)\n        stdout.flush()\n        return stdout\n\n\ndef matches_line(php, hippy, check_sign_only=False):\n    if php.startswith("%r"):\n        return re.match(php.replace("%r", ""), hippy)\n    if check_sign_only:\n        if re.match(\'int\\(\\d+\\)\', php):\n            return re.match(\'int\\(\\d+\\)\', hippy)\n        if re.match(\'int\\(-\\d+\\)\', php):\n            return re.match(\'int\\(-\\d+\\)\', hippy)\n    if \'%\' not in php:\n        return php == hippy\n    php = php.replace("%unicode|string%", "string")\n    php = php.replace("%string|unicode%", "string")\n    php = php.replace("%unicode_string_optional%", "string")\n    php = php.replace("%binary_string_optional%", "string")\n    php = php.replace("%u|b%", "")\n    rphp = re.escape(php)\n    rphp = rphp.replace(\'\\%e\', \'.*\')\n    rphp = rphp.replace(\'\\%x\', \'[0-9a-fA-F]+\')\n    rphp = rphp.replace(\'\\%s\', \'.*\')\n    rphp = rphp.replace(\'\\%a\', \'.*\')\n    rphp = rphp.replace(\'\\%f\', \'.*\')\n    rphp = rphp.replace(\'\\%d\', \'\\d+\')\n    rphp = rphp.replace(\'\\%i\', \'.*\')\n    return re.match(rphp, hippy)\n\nTEST_DIR = os.path.dirname(__file__)\n\nbasic_test_dir = \'basic\'\nclasses_test_dir = \'classes\'\nfunc_test_dir = \'func\'\nlang_test_dir = \'lang\'\noperators_test_dir = \'lang/operators\'\noutput_test_dir = \'output\'\nruntest_test_dir = \'run-test\'\nsecurity_test_dir = \'security\'\nstrings_test_dir = \'strings\'\narray_test_dir = \'ext/standard/array\'\nclass_object_test_dir = \'ext/standard/class_object\'\nstring_test_dir = \'ext/standard/strings\'\nstreams_test_dir = \'ext/standard/streams\'\nmath_test_dir = \'ext/standard/math\'\nfile_test_dir = \'ext/standard/file\'\ndir_test_dir = \'ext/standard/dir\'\nposix_test_dir = \'ext/posix\'\ngeneral_test_dir = \'ext/standard/general_functions\'\nnetwork_test_dir = \'ext/standard/network\'\nurl_test_dir = \'ext/standard/url\'\nmysql_test_dir = \'ext/mysql\'\nsession_test_dir = \'ext/session\'\nserialize_test_dir = \'ext/standard/serialize\'\ndate_test_dir = \'ext/standard/date\'\nctype_test_dir = \'ext/ctype\'\npcre_test_dir = \'ext/pcre\'\nhash_test_dir = \'ext/hash\'\nspl_test_dir = \'ext/spl\'\nZend_test_dir = \'Zend\'\nmcrypt_test_dir = \'ext/mcrypt\'\n\nos.environ["MYSQL_TEST_HOST"] = "localhost"\nos.environ["MYSQL_TEST_USER"] = "root"\nos.environ["MYSQL_TEST_PASSWD"] = "root"\nos.environ["MYSQL_TEST_PORT"] = "3306"\n\nmarkers = {}\n\n# ARRAY\nmarkers[array_test_dir] = {\n    \'bug41121.phpt\': "int/float mix",\n    \'bug31158.phpt\': "do not understand it right now..",\n    \'array_sum.phpt\': slow,\n    \'002.phpt\': "T_LIST parser problem",\n    \'007.phpt\': "?",\n    \'008.phpt\': "?",\n    \'bug24766.phpt\': "missing debug_zval_dump",\n    \'bug25708.phpt\': "missing debug_zval_dump",\n    \'bug26458.phpt\': "missing debug_zval_dump",\n    \'bug35821.phpt\': "not implemented error",\n    \'bug36975.phpt\': "PHP quirk behavior",\n    \'bug45312.phpt\': "not implemented error",\n    \'bug61730.phpt\': "unexpected \'T_USE\'",\n\n    \'array_diff_uassoc_variation5.phpt\': "doesnt work properly",\n    \'array_diff_uassoc_variation6.phpt\': "doesnt work properly",\n    \'array_diff_uassoc_variation8.phpt\': "doesnt work properly",\n    \'array_diff_ukey_variation9.phpt\': "doesnt work properly",\n    \'array_diff_variation5.phpt\': "doesnt work properly",\n    \'array_diff_variation9.phpt\': "doesnt work properly",\n    \'array_fill_object_2_4.phpt\': "order of class members",\n    \'array_filter_variation7.phpt\': "missing create_function()",\n\n    \'array_intersect_assoc_variation9.phpt\': \'too many notices\',\n    \'array_intersect_variation4.phpt\': "doesnt work properly",\n    \'array_intersect_variation8.phpt\': "wrong order of elems",\n    \'array_intersect_variation9.phpt\': "doesnt work properly",\n    \'array_key_exists_object1.phpt\': ("var_dump format is different and one key"\n                                      "is reported as missing"),\n    \'array_key_exists_object2.phpt\': "var_dump format is different",\n    \'array_keys_variation_002.phpt\': "doesnt work prop",\n    \'array_keys_variation_003.phpt\': "doesnt work prop",\n    \'array_keys_variation_004.phpt\': "doesnt work prop",\n    \'array_map_001.phpt\': "missing (useless) warning",\n    \'array_map_object1.phpt\': "missing strict",\n    \'array_map_object2.phpt\': "wording of warning",\n    \'array_map_variation10.phpt\': "missing create_function()",\n    \'array_multisort_variation7.phpt\': "SORT_REGULAR is not a meaningful ordering",\n    \'array_multisort_variation8.phpt\': "Fatal error should Catchable",\n    \'array_multisort_variation9.phpt\': "algorithm details are different",\n    \'array_next_error2.phpt\': "Argument 1 for next() must be a variable",\n    \'array_pad_variation2.phpt\': "arg parse problem",\n    \'array_product_variation1.phpt\': "instance unimplemented as_number",\n    \'array_product_variation4.phpt\': "?",\n    \'array_push_error2.phpt\': "XXX push item in array having key = sys.maxint should fail",\n    \'array_replace.phpt\': "?",\n    \'array_search1.phpt\': "?",\n    \'array_search_variation2.phpt\': "?",\n    \'array_shift_variation8.phpt\': "?",\n    \'array_sum_variation7.phpt\': "?",\n    \'array_udiff_assoc_basic.phpt\': "?",\n    \'array_udiff_assoc_variation.phpt\': "?",\n    \'array_udiff_assoc_variation3.phpt\': "?",\n    \'array_udiff_assoc_variation5.phpt\': "?",\n    \'array_udiff_basic.phpt\': "?",\n    \'array_udiff_uassoc_basic.phpt\': "?",\n    \'array_uintersect_assoc_variation2.phpt\': "?",\n    \'array_uintersect_assoc_variation4.phpt\': "?",\n    \'array_uintersect_assoc_variation5.phpt\': "?",\n    \'array_uintersect_variation5.phpt\': "missing one warning",\n    \'array_uintersect_uassoc_variation6.phpt\': "missing one warning",\n    \'array_uintersect_variation3.phpt\': "?",\n    \'array_unique_variation2.phpt\': "?",\n    \'array_unique_variation8.phpt\': "too many warnings?",\n    \'array_walk_object1.phpt\': "?",\n    \'array_walk_objects.phpt\': "?",\n    \'array_walk_variation7.phpt\': "?",\n    \'array_walk_rec_objects.phpt\': "?",\n    \'array_walk_recursive_object1.phpt\': "?",\n    \'array_walk_recursive_variation7.phpt\': "?",\n    \'arsort_basic.phpt\': "wrong order of elems",\n    \'arsort_variation2.phpt\': "wrong order of elems",\n    \'arsort_variation11.phpt\': "wrong order of elems",\n    \'arsort_variation5.phpt\': "wrong order of elems",\n    \'asort_variation2.phpt\': "wrong order of elems",\n    \'asort_variation11.phpt\': "wrong order of elems",\n    \'asort_variation3.phpt\': "wrong order of elems",\n    \'asort_variation7.phpt\': "wrong order of elems",\n    \'asort_variation9.phpt\': "wrong order of elems",\n    \'bug28739.phpt\': "?",\n    \'bug29493.phpt\': "?",\n    \'bug30074.phpt\': "?",\n    \'bug31213.phpt\': "?",\n    \'bug32021.phpt\': "?",\n    \'bug33940.phpt\': "?",\n    \'bug42177.phpt\': "?",\n    \'bug42233.phpt\': "?",\n    \'bug43495.phpt\': "?",\n    \'bug44181.phpt\': "?",\n    \'bug44182.phpt\': "?",\n    \'bug48224.phpt\': "?",\n    \'bug50006.phpt\': "?",\n    \'bug50006_1.phpt\': "?",\n    \'bug50006_2.phpt\': "?",\n    \'compact.phpt\': "SKIP: parse error in ini",\n    \'compact_variation1.phpt\': "SKIP: parse error in INI",\n    \'each.phpt\': "doesnt work properly",\n    \'extract_variation10.phpt\': "?",\n    \'extract_variation11.phpt\': "?",\n    \'extract_variation6.phpt\': "?",\n    \'extract_safety.phpt\': "missing debug_zval_dump()",\n    \'extract_variation1.phpt\': "missing debug_zval_dump()",\n    \'extract_variation9.phpt\': " missing get_object_vars()",\n    \'krsort_basic.phpt\': "wrong order of elems",\n    \'krsort_variation2.phpt\': "wrong order of elems",\n    \'ksort_variation2.phpt\': "wrong order of elems",\n    \'ksort_variation8.phpt\': "wrong odred of elems",\n    \'ksort_variation9.phpt\': "wrong order of elems",\n    \'locale_sort.phpt\': \'Xfail: requires the locale fr_FR.ISO-8859-1 to be available\',\n    \'prev_error3.phpt\': "FatalError: Argument 1 for prev() must be a variable",\n    \'range_variation.phpt\': "parser problem",\n    \'rsort_basic.phpt\': "wrong order of elems",\n    \'rsort_variation2.phpt\': "wrong order of elems",\n    \'rsort_variation11.phpt\': "wrong order of elems",\n    \'sort_variation2.phpt\': "wrong order of elems",\n    \'sort_variation11.phpt\': "?",\n    \'sort_variation9.phpt\': "?",\n    \'uasort_basic2.phpt\': "?",\n    \'uasort_object1.phpt\': "?",\n    \'uasort_object2.phpt\': "?",\n    \'uasort_variation11.phpt\': "?",\n    \'uasort_variation6.phpt\': "?",\n    \'usort_variation6.phpt\': "?",\n    \'uksort_variation1.phpt\': "arg check order problem",\n    \'range_variation1.phpt\': "in/float mix",\n    \'rsort_variation3.phpt\': "in/float mix",\n    \'usort_variation7.phpt\': "missing create_function()",\n    \'uasort_variation7.phpt\': "missing create_function()",\n    \'unexpected_array_mod_bug.phpt\': "dont now how to find if w_arr was modified",\n}\n\nmarkers[class_object_test_dir] = {\n    \'get_class_error_001.phpt\': "bad return value on failures",\n    \'get_class_vars_variation2.phpt\': "undefined get_class_vars()",\n    \'get_declared_classes_basic_001.phpt\': "works,  problem with %s regexp in output",\n    \'get_declared_interfaces_basic_001.phpt\': "works,  problem with %s regexp in output",\n\n    \'get_declared_traits_basic_001.phpt\': "unexpected T_STRING",\n    \'get_declared_traits_error_001.phpt\': "undefined function get_declared_traits()",\n    \'get_declared_traits_variation1.phpt\': "unexpected T_USE",\n    \'trait_class_exists_variation_003.phpt\': "undefined function trait_exists()",\n    \'trait_exists_basic_001.phpt\': "unexpected T_STRING",\n    \'trait_exists_error_001.phpt\': "undefined function trait_exists()",\n    \'trait_exists_variation_001.phpt\': "undefined function trait_exists()",\n    \'trait_exists_variation_002.phpt\': "undefined function trait_exists()",\n}\n\n# MATH\nmarkers[math_test_dir] = {\n    "bug28228.phpt": "bullshit NULL as string arg",\n    \'bug45712.phpt\': "the test is wrong (asks for inf != inf)",\n    \'tan_basiclong_64bit.phpt\': \'Xfail: It produces a different result on Travis\',\n}\n\n\n# DIR\nmarkers[dir_test_dir] = {\n    \'opendir_variation2.phpt\': "args problem",\n    \'closedir_variation1.phpt\': "args problem",\n    \'rewinddir_variation1.phpt\': "args problem",\n    \'readdir_variation1.phpt\': "args problem",\n}\n\n\n# FILE\nmarkers[file_test_dir] = {\n    \'bug26615.phpt\': \'SKIP: requires TEST_PHP_EXECUTABLE in env\',\n    \'bug26938.phpt\': \'SKIP: requires TEST_PHP_EXECUTABLE in env\',\n    \'001.phpt\': "?",\n    \'004.phpt\': "missing mkd5_file()",\n    \'bug12556.phpt\': "?",\n    \'bug22382.phpt\': "?",\n    \'bug26003.phpt\': "?",\n\n    \'bug43353.phpt\': "nightmare...",\n    \'bug45303.phpt\': "nightmare...",\n    \'bug45303.phpt\': "nightmare...",\n    \'bug52624.phpt\': "nightmare...",\n    \'bug22414.phpt\': "missing md5_file()",\n    \'bug27508.phpt\': "missing stream_wrapper_register()",\n    \'bug27619.phpt\': "?",\n    \'bug30362.phpt\': "missing stream_get_line()",\n    \'bug35781.phpt\': "missing stream_filter_append()",\n    \'bug37158.phpt\': "missing stream_wrapper_register()",\n    \'bug38086.phpt\': "missing stream_filter_append()",\n    \'bug38450.phpt\': "missing stream_wrapper_register()",\n    \'bug38450_1.phpt\': "missing stream_wrapper_register()",\n    \'bug38450_2.phpt\': "T_THROW missing",\n    \'bug38450_3.phpt\': "missing stream_wrapper_register()",\n    \'bug39551.phpt\': "missing stream_bucket_new()",\n    \'bug39538.phpt\': "?",\n    \'bug43008.phpt\': "missing urlencode()",\n    \'bug43216.phpt\': "missing stream_is_local()",\n    \'bug43522.phpt\': "missing stream_get_line()",\n    \'bug44607.phpt\': "missing stream_get_line()",\n    \'bug46347.phpt\': "missing parse_ini_file()",\n    \'bug40501.phpt\': "?",\n    \'bug41655_1.phpt\': "glob problem",\n    \'bug44034.phpt\': "?",\n    \'bug51094.phpt\': "missing parse_ini_string()",\n    \'bug53241.phpt\': "missing curl_init()",\n    \'bug53848.phpt\': "?",\n    \'bug63512.phpt\': "missing parse_ini_string()",\n    \'directory_wrapper_fstat_basic.phpt\': "?",\n    \'clearstatcache_001.phpt\': "?",\n    \'copy_variation4.phpt\': "imo whole expect is wrong",\n    \'copy_variation3.phpt\': "imo whole expect is wrong",\n    \'fgetc_variation1.phpt\': "compile None",\n\n    \'php_fd_wrapper_03.phpt\': "HW: creating array_from empty...",\n\n    \'fopen_variation14.phpt\': "remote  host file access..?",\n    \'fopen_variation15.phpt\': "remote  host file access..?",\n\n    \'fgetcsv.phpt\': "not implemented",\n    \'fgetcsv_error.phpt\': "not implemented",\n    \'fgetcsv_variation1.phpt\': "not implemented",\n    \'fgetcsv_variation2.phpt\': "not implemented",\n    \'fgetcsv_variation3.phpt\': "not implemented",\n    \'fgetcsv_variation4.phpt\': "not implemented",\n    \'fgetcsv_variation5.phpt\': "not implemented",\n    \'fgetcsv_variation6.phpt\': "not implemented",\n    \'fgetcsv_variation7.phpt\': "not implemented",\n    \'fgetcsv_variation8.phpt\': "not implemented",\n    \'fgetcsv_variation9.phpt\': "not implemented",\n    \'fgetcsv_variation10.phpt\': "not implemented",\n    \'fgetcsv_variation11.phpt\': "not implemented",\n    \'fgetcsv_variation12.phpt\': "not implemented",\n    \'fgetcsv_variation13.phpt\': "not implemented",\n    \'fgetcsv_variation14.phpt\': "not implemented",\n    \'fgetcsv_variation15.phpt\': "not implemented",\n    \'fgetcsv_variation16.phpt\': "not implemented",\n    \'fgetcsv_variation17.phpt\': "not implemented",\n    \'fgetcsv_variation18.phpt\': "not implemented",\n    \'fgetcsv_variation19.phpt\': "not implemented",\n    \'fgetcsv_variation20.phpt\': "not implemented",\n    \'fgetcsv_variation21.phpt\': "not implemented",\n    \'fgetcsv_variation22.phpt\': "not implemented",\n    \'fgetcsv_variation23.phpt\': "not implemented",\n    \'fgetcsv_variation24.phpt\': "not implemented",\n    \'fgetcsv_variation25.phpt\': "not implemented",\n    \'fgetcsv_variation26.phpt\': "not implemented",\n    \'fgetcsv_variation27.phpt\': "not implemented",\n    \'fgetcsv_variation28.phpt\': "not implemented",\n    \'fgetcsv_variation29.phpt\': "not implemented",\n    \'fgetcsv_variation30.phpt\': "not implemented",\n    \'fgetcsv_variation31.phpt\': "not implemented",\n    \'fgets_socket_variation2.phpt\': "error binding",\n    \'fgetss.phpt\': "not implemented",\n    \'fgetss1.phpt\': "not implemented",\n    \'fgetss_basic1.phpt\': "not implemented",\n    \'fgetss_basic2.phpt\': "not implemented",\n    \'fgetss_error.phpt\': "not implemented",\n    \'fgetss_variation1.phpt\': "not implemented",\n    \'fgetss_variation4.phpt\': "not implemented",\n    \'fgetss_variation5.phpt\': "not implemented",\n    \'file_get_contents_error.phpt\': "invalid maxlength",\n    \'file_get_contents_error001.phpt\': "http:// protocol",\n    \'file_get_contents_error002.phpt\': "?",\n    \'file_put_contents_variation2.phpt\': "?",\n    \'file_variation.phpt\': "?",\n    \'flock.phpt\': "missing flock()",\n    \'flock_basic.phpt\': "missing flock()",\n    \'flock_error.phpt\': "missing flock()",\n    \'flock_variation.phpt\': "missing flock()",\n    \'fopencookie.phpt\': "missing stream_wrapper_register()",\n    \'fflush_variation3.phpt\': "?",\n    \'fopen_variation5.phpt\': "hmm",\n    \'fopen_variation8.phpt\': "hmm",\n    \'fputcsv_002.phpt\': "not implemented",\n    \'fputcsv_error.phpt\': "not implemented",\n    \'fputcsv.phpt\': "not implemented",\n    \'fputcsv_variation10.phpt\': "not implemented",\n    \'fputcsv_variation11.phpt\': "not implemented",\n    \'fputcsv_variation12.phpt\': "not implemented",\n    \'fputcsv_variation13.phpt\': "not implemented",\n    \'fputcsv_variation14.phpt\': "not implemented",\n    \'fputcsv_variation1.phpt\': "not implemented",\n    \'fputcsv_variation2.phpt\': "not implemented",\n    \'fputcsv_variation3.phpt\': "not implemented",\n    \'fputcsv_variation4.phpt\': "not implemented",\n    \'fputcsv_variation5.phpt\': "not implemented",\n    \'fputcsv_variation6.phpt\': "not implemented",\n    \'fputcsv_variation7.phpt\': "not implemented",\n    \'fputcsv_variation8.phpt\': "not implemented",\n    \'fputcsv_variation9.phpt\': "not implemented",\n\n    \'fscanf.phpt\': "not implemented",\n    \'fscanf_error.phpt\': "not implemented",\n    \'fscanf_variation10.phpt\': "not implemented",\n    \'fscanf_variation11.phpt\': "not implemented",\n    \'fscanf_variation12.phpt\': "not implemented",\n    \'fscanf_variation13.phpt\': "not implemented",\n    \'fscanf_variation14.phpt\': "not implemented",\n    \'fscanf_variation15.phpt\': "not implemented",\n    \'fscanf_variation16.phpt\': "not implemented",\n    \'fscanf_variation17.phpt\': "not implemented",\n    \'fscanf_variation18.phpt\': "not implemented",\n    \'fscanf_variation19.phpt\': "not implemented",\n    \'fscanf_variation1.phpt\': "not implemented",\n    \'fscanf_variation20.phpt\': "not implemented",\n    \'fscanf_variation21.phpt\': "not implemented",\n    \'fscanf_variation22.phpt\': "not implemented",\n    \'fscanf_variation23.phpt\': "not implemented",\n    \'fscanf_variation24.phpt\': "not implemented",\n    \'fscanf_variation25.phpt\': "not implemented",\n    \'fscanf_variation26.phpt\': "not implemented",\n    \'fscanf_variation27.phpt\': "not implemented",\n    \'fscanf_variation28.phpt\': "not implemented",\n    \'fscanf_variation29.phpt\': "not implemented",\n    \'fscanf_variation2.phpt\': "not implemented",\n    \'fscanf_variation30.phpt\': "not implemented",\n    \'fscanf_variation31.phpt\': "not implemented",\n    \'fscanf_variation32.phpt\': "not implemented",\n    \'fscanf_variation33.phpt\': "not implemented",\n    \'fscanf_variation34.phpt\': "not implemented",\n    \'fscanf_variation35.phpt\': "not implemented",\n    \'fscanf_variation36.phpt\': "not implemented",\n    \'fscanf_variation37.phpt\': "not implemented",\n    \'fscanf_variation38.phpt\': "not implemented",\n    \'fscanf_variation39.phpt\': "not implemented",\n    \'fscanf_variation3.phpt\': "not implemented",\n    \'fscanf_variation40.phpt\': "not implemented",\n    \'fscanf_variation41.phpt\': "not implemented",\n    \'fscanf_variation42.phpt\': "not implemented",\n    \'fscanf_variation43.phpt\': "not implemented",\n    \'fscanf_variation44.phpt\': "not implemented",\n    \'fscanf_variation45.phpt\': "not implemented",\n    \'fscanf_variation46.phpt\': "not implemented",\n    \'fscanf_variation47.phpt\': "not implemented",\n    \'fscanf_variation48.phpt\': "not implemented",\n    \'fscanf_variation49.phpt\': "not implemented",\n    \'fscanf_variation4.phpt\': "not implemented",\n    \'fscanf_variation50.phpt\': "not implemented",\n    \'fscanf_variation51.phpt\': "not implemented",\n    \'fscanf_variation52.phpt\': "not implemented",\n    \'fscanf_variation53.phpt\': "not implemented",\n    \'fscanf_variation54.phpt\': "not implemented",\n    \'fscanf_variation55.phpt\': "not implemented",\n    \'fscanf_variation5.phpt\': "not implemented",\n    \'fscanf_variation6.phpt\': "not implemented",\n    \'fscanf_variation7.phpt\': "not implemented",\n    \'fscanf_variation8.phpt\': "not implemented",\n    \'fscanf_variation9.phpt\': "not implemented",\n\n    \'fseek_dir_basic.phpt\': "?",\n    \'fwrite_variation5.phpt\': "?",\n    \'ftruncate_error.phpt\': "fopen creates new empty file...",\n    \'readlink_variation1.phpt\': \'warning missmatch\',\n\n    \'include_userstream_001.phpt\': "missing stream_register_wrapper()",\n    \'include_userstream_002.phpt\': "missing stream_register_wrapper()",\n    \'include_userstream_003.phpt\': "missing stream_register_wrapper()",\n    \'include_streams.phpt\': "?",\n    \'is_uploaded_file_basic.phpt\': "missing is_uploaded_file()",\n    \'lchgrp_basic.phpt\': "missing lchgrp()",\n    \'lchown_basic.phpt\': "missing lchown()",\n    \'lchown_error.phpt\': "missing lchown()",\n    \'lstat_stat_variation4.phpt\': "?",\n    \'lstat_stat_variation5.phpt\': "?",\n    \'lstat_stat_variation6.phpt\': "?",\n\n    \'move_uploaded_file_basic.phpt\': "missing move_uploaded_file()",\n    \'parse_ini_file_error.phpt\': "missing parse_ini_file()",\n    \'parse_ini_file.phpt\': "missing parse_ini_file()",\n    \'parse_ini_file_variation1.phpt\': "missing parse_ini_file()",\n    \'parse_ini_file_variation2.phpt\': "missing parse_ini_file()",\n    \'parse_ini_file_variation3.phpt\': "missing parse_ini_file()",\n    \'parse_ini_file_variation4.phpt\': "missing parse_ini_file()",\n    \'parse_ini_file_variation5.phpt\': "missing parse_ini_file()",\n    \'parse_ini_file_variation6.phpt\': "missing parse_ini_file()",\n    \'pclose_variation1.phpt\': "?",\n    \'php_fd_wrapper_01.phpt\': "?",\n    \'php_fd_wrapper_02.phpt\': "?",\n    \'php_fd_wrapper_04.phpt\': "?",\n    \'popen_pclose_basic.phpt\': "?",\n    \'parse_ini_file_variation4.phpt\': "?",\n    \'parse_ini_file_variation5.phpt\': "?",\n    \'proc_open01.phpt\': "?",\n    \'realpath_cache.phpt\': "missing realpath_cache_size()",\n    \'readlink_realpath_basic2.phpt\': "?",\n    \'readfile_variation3.phpt\': "?",\n    \'statpage.phpt\': "missing getlastmod()",\n    \'stream_001.phpt\': "missing stream_wrapper_unregister()",\n    \'stream_002.phpt\': "missing stream_wrapper_unregister()",\n    \'stream_copy_to_stream.phpt\': "missing stream_wrapper_unregister()",\n    \'stream_enclosed.phpt\': "missing stream_wrapper_unregister()",\n    \'stream_get_line.phpt\': "missing stream_wrapper_unregister()",\n    \'stream_supports_lock.phpt\': "missing stream_wrapper_unregister()",\n\n    \'stream_rfc2397_001.phpt\': "?",\n    \'stream_rfc2397_002.phpt\': "?",\n    \'stream_rfc2397_003.phpt\': "?",\n    \'stream_rfc2397_004.phpt\': "?",\n    \'stream_rfc2397_005.phpt\': "?",\n    \'stream_rfc2397_006.phpt\': "?",\n    \'stream_rfc2397_007.phpt\': "?",\n    \'symlink_link_linkinfo_is_link_variation3.phpt\': "?",\n    \'tempnam_variation2.phpt\': "strange....",\n    \'tempnam_variation3.phpt\': "how ...",\n    \'tempnam_variation4.phpt\': "perms problem",\n    \'touch_basic.phpt\': "?",\n    \'userfilters.phpt\': "?",\n    \'umask_basic.phpt\': "missing umask()",\n    \'umask_error.phpt\': "missing umask()",\n    \'umask_variation1.phpt\': "missing umask()",\n    \'umask_variation2.phpt\': "missing umask()",\n    \'umask_variation3.phpt\': "missing umask()",\n    \'userstreams.phpt\': "missing stream_wrapper_register()",\n    \'userstreams_002.phpt\': "missing stream_wrapper_register()",\n    \'userstreams_003.phpt\': "missing stream_wrapper_register()",\n    \'userstreams_004.phpt\': "missing stream_wrapper_register()",\n    \'userstreams_005.phpt\': "missing stream_wrapper_register()",\n    \'userstreams_006.phpt\': "missing stream_wrapper_register()",\n    \'userstreams_007.phpt\': "missing stream_wrapper_register()",\n    \'userdirstream.phpt\': \'missing stream_wrapper_register()\',\n    \'userwrapper.phpt\': \'missing stream_wrapper_register()\',\n    \'fgetss_variation2.phpt\': slow,\n    \'fgetss_variation3.phpt\': slow,\n}\n\nif IS_TRAVIS:\n    markers[file_test_dir].update({\n        \'get_current_user.phpt\': \'Fails with OSError: [Errno 25] Inappropriate ioctl for device on Travis\',\n        \'fwrite_variation3.phpt\': \'On Travis ftell returns incorrectly after writing\',\n        \'disk_free_space_basic.phpt\': \'Xfail: sometimes fail on Travis\',\n    })\n\n# POSIX\nmarkers[posix_test_dir] = {\n    \'posix_access.phpt\': "Expecting: Deprecated: Directive safe_mode is ...",  # Update the tests to PHP 5.4\n    \'posix_access_error_modes.phpt\': "Expecting: Deprecated: Directive safe_mode is ...",\n    \'posix_access_safemode.phpt\': "Expecting: Deprecated: Directive safe_mode is ...",\n    \'posix_ttyname.phpt\': "OSError: [Errno 25] Inappropriate ioctl for device",\n    \'posix_ttyname_variation6.phpt\': "Missing:  Error: 8 - Object of class classWithToString could not be converted to int",\n    \'posix_getgrgid_basic.phpt\': \'Problems with the %a format in the test. Output looks good\',\n    \'posix_getgrgid_macosx.phpt\': \'Test should be skipped in platforms other than mac\',\n    \'posix_ttyname_error_wrongparams.phpt\': \'missing imagecreate()\',\n    \'posix_mkfifo_safemode.phpt\': \'Xfail: On Travis and other setups it is possible to create a fifo in /tmp (probably there is only one user)\',\n}\n\n\n# STRING\nmarkers[string_test_dir] = {\n    \'004.phpt\': "Section EXPECTREGEX not handled",\n    \'bug40754.phpt\': check_sign_only,\n    \'bug54454.phpt\': check_sign_only,\n    \'chunk_split.phpt\': slow,  # hangs on 64-bit\n    \'implode.phpt\': "$php_errormsg",\n    \'htmlentities22.phpt\': "named constant in default args",\n    \'setlocale_error.phpt\': ("not implemented: (deprecated) "\n                             "category names as strings"),\n    \'setlocale_variation4.phpt\': ("expects en_US as "\n                                  "default system locale"),\n    \'setlocale_variation5.phpt\': ("expects en_US as "\n                                  "default system locale"),\n    \'strncasecmp_variation7.phpt\': check_sign_only,\n    \'strncasecmp_variation9.phpt\': check_sign_only,\n    \'stripslashes_variation5.phpt\': "escape chars",\n    \'strncmp_variation7.phpt\': check_sign_only,\n    \'substr_replace_array.phpt\': "handles only lists",\n    \'vprintf_error.phpt\': "PHP inconsistency",\n    \'vsprintf_error.phpt\': "PHP inconsistency",\n    \'wordwrap_error.phpt\': ("unimplemented corner "\n                            "case when width < 0"),\n    \'wordwrap_variation2.phpt\': ("unimplemented corner "\n                                 "case when width < 0"),\n\n    \'sprintf_variation52.phpt\': \'some problem\',\n\n    \'005.phpt\': "not implemented",\n    \'006.phpt\': "not implemented",\n    \'007.phpt\': "not implemented",\n    \'bug21453.phpt\': "not implemented",\n    \'bug21730.phpt\': "not implemented",\n    \'bug21744.phpt\': "not implemented",\n    \'bug22008.phpt\': "not implemented",\n    \'bug23650.phpt\': "not implemented",\n    \'bug26817.phpt\': "not implemented",\n    \'bug26819.phpt\': "not implemented",\n    \'bug27295.phpt\': "not implemented",\n    \'bug29075.phpt\': "not implemented",\n    \'bug29119.phpt\': "not implemented",\n    \'bug37262.phpt\': "Call to undefined function create_function()",\n    \'bug38322.phpt\': "not implemented",\n    \'bug40432.phpt\': "not implemented",\n    \'bug42107.phpt\': "not implemented",\n    \'bug44242.phpt\': "not implemented",\n    \'bug44703.phpt\': "not implemented",\n    \'bug46578.phpt\': "not implemented",\n    \'bug47322.phpt\': "not implemented",\n    \'bug47443.phpt\': "not implemented",\n    \'bug47842.phpt\': "not implemented",\n    \'bug48709.phpt\': "not implemented",\n    \'bug49785.phpt\': "not implemented",\n    \'bug50052.phpt\': "not implemented",\n    \'bug50847.phpt\': "not implemented",\n    \'bug51059.phpt\': "not implemented",\n    \'bug51899.phpt\': "not implemented",\n    \'bug53021.phpt\': "not implemented",\n    \'bug53319.phpt\': "not implemented",\n    \'bug54322.phpt\': "not implemented",\n    \'bug54721.phpt\': "not implemented",\n    \'bug55674.phpt\': "not implemented",\n    \'bug55871.phpt\': "not implemented",\n    \'bug62443.phpt\': "not implemented",\n    \'convert_cyr_string.phpt\': "not implemented",\n    \'convert_cyr_string_basic.phpt\': "not implemented",\n    \'convert_cyr_string_error.phpt\': "not implemented",\n    \'convert_cyr_string_variation1.phpt\': "not implemented",\n    \'crypt.phpt\': "not implemented",\n    \'crypt_blowfish.phpt\': "not implemented",\n    \'crypt_blowfish_variation1.phpt\': "not implemented",\n    \'crypt_blowfish_variation2.phpt\': "not implemented",\n    \'crypt_chars.phpt\': "not implemented",\n    \'crypt_sha256.phpt\': "not implemented",\n    \'crypt_sha512.phpt\': "not implemented",\n    \'crypt_variation1.phpt\': "not implemented",\n    \'printf_64bit.phpt\': \'precision warning XXX\',\n    \'get_html_translation_table_basic1.phpt\': "not implemented",\n    \'get_html_translation_table_basic10.phpt\': "not implemented",\n    \'get_html_translation_table_basic2.phpt\': "not implemented",\n    \'get_html_translation_table_basic3.phpt\': "not implemented",\n    \'get_html_translation_table_basic4.phpt\': "not implemented",\n    \'get_html_translation_table_basic5.phpt\': "not implemented",\n    \'get_html_translation_table_basic6.phpt\': "not implemented",\n    \'get_html_translation_table_basic7.phpt\': "not implemented",\n    \'get_html_translation_table_basic8.phpt\': "not implemented",\n    \'get_html_translation_table_basic9.phpt\': "not implemented",\n    \'get_html_translation_table_error.phpt\': "not implemented",\n    \'get_html_translation_table_variation1.phpt\': "not implemented",\n    \'get_html_translation_table_variation2.phpt\': "not implemented",\n    \'get_meta_tags.phpt\': "not implemented",\n    \'hebrev_basic.phpt\': "not implemented",\n    \'hebrev_error.phpt\': "not implemented",\n    \'hebrev_variation1.phpt\': "not implemented",\n    \'hebrev_variation2.phpt\': "not implemented",\n    \'hebrevc_basic.phpt\': "not implemented",\n    \'hebrevc_error.phpt\': "not implemented",\n    \'hebrevc_variation1.phpt\': "not implemented",\n    \'hebrevc_variation2.phpt\': "not implemented",\n    \'highlight_file.phpt\': "not implemented",\n    \'html_entity_decode1.phpt\': "not implemented",\n    \'html_entity_decode3.phpt\': "not implemented",\n    \'html_entity_decode_cp866.phpt\': "not implemented",\n    \'html_entity_decode_html4.phpt\': "not implemented",\n    \'html_entity_decode_html5.phpt\': "not implemented",\n    \'html_entity_decode_iso8859-15.phpt\': "not implemented",\n    \'html_entity_decode_iso8859-5.phpt\': "not implemented",\n    \'html_entity_decode_koi8-r.phpt\': "not implemented",\n    \'html_entity_decode_macroman.phpt\': "not implemented",\n    \'html_entity_decode_win1251.phpt\': "not implemented",\n    \'html_entity_decode_win1252.phpt\': "not implemented",\n    \'htmlentities-utf-2.phpt\': "not implemented",\n    \'htmlentities-utf-3.phpt\': "not implemented",\n    \'htmlentities-utf.phpt\': "not implemented",\n    \'htmlentities.phpt\': "not implemented",\n    \'htmlentities01.phpt\': "not implemented",\n    \'htmlentities02.phpt\': "not implemented",\n    \'htmlentities03.phpt\': "not implemented",\n    \'htmlentities04.phpt\': "not implemented",\n    \'htmlentities05.phpt\': "not implemented",\n    \'htmlentities06.phpt\': "SKIP: parse error in CLEAN",\n    \'htmlentities07.phpt\': "SKIP: parse error in CLEAN",\n    \'htmlentities08.phpt\': "not implemented",\n    \'htmlentities09.phpt\': "not implemented",\n    \'htmlentities10.phpt\': "not implemented",\n    \'htmlentities11.phpt\': "SKIP: parse error in CLEAN",\n    \'htmlentities12.phpt\': "SKIP: parse error in CLEAN",\n    \'htmlentities13.phpt\': "not implemented",\n    \'htmlentities14.phpt\': "not implemented",\n    \'htmlentities15.phpt\': "not implemented",\n    \'htmlentities16.phpt\': "not implemented",\n    \'htmlentities17.phpt\': "not implemented",\n    \'htmlentities18.phpt\': "not implemented",\n    \'htmlentities19.phpt\': "not implemented",\n    \'htmlentities20.phpt\': "not implemented",\n    \'htmlentities21.phpt\': "not implemented",\n    \'htmlentities23.phpt\': "not implemented",\n    \'htmlentities24.phpt\': "not implemented",\n    \'htmlentities_html4.phpt\': "not implemented",\n    \'htmlentities_html5.phpt\': "not implemented",\n    \'http_build_query.phpt\': "not implemented",\n    \'http_build_query_error.phpt\': "not implemented",\n    \'http_build_query_variation1.phpt\': "not implemented",\n    \'http_build_query_variation2.phpt\': "not implemented",\n    \'md5_file.phpt\': "not implemented",\n    \'metaphone.phpt\': "not implemented",\n    \'money_format_basic1.phpt\': "not implemented",\n    \'money_format_error.phpt\': "not implemented",\n    \'money_format_variation1.phpt\': "not implemented",\n    \'money_format_variation2.phpt\': "not implemented",\n    \'moneyformat.phpt\': "not implemented",\n    \'number_format_error.phpt\': "not implemented",\n    \'parse_str_basic1.phpt\': "not implemented",\n    \'parse_str_basic2.phpt\': "not implemented",\n    \'parse_str_basic3.phpt\': "not implemented",\n    \'parse_str_basic4.phpt\': "not implemented",\n    \'php_strip_whitespace.phpt\': "not implemented",\n    \'sha1.phpt\': \'sha1_file not implemented\',\n    \'sha1_file.phpt\': "not implemented",\n    \'show_source_basic.phpt\': "not implemented",\n    \'show_source_variation1.phpt\': "not implemented",\n    \'show_source_variation2.phpt\': "not implemented",\n    \'similar_text_basic.phpt\': "not implemented",\n    \'similar_text_error.phpt\': "not implemented",\n    \'sscanf_basic1.phpt\': "not implemented",\n    \'sscanf_basic2.phpt\': "not implemented",\n    \'sscanf_basic3.phpt\': "not implemented",\n    \'sscanf_basic4.phpt\': "not implemented",\n    \'sscanf_basic5.phpt\': "not implemented",\n    \'sscanf_basic7.phpt\': "not implemented",\n    \'sscanf_basic8.phpt\': "not implemented",\n    \'sscanf_error.phpt\': "not implemented",\n    \'sscanf_variation1.phpt\': "not implemented",\n    \'sscanf_variation2.phpt\': "not implemented",\n    \'str_getcsv_001.phpt\': "not implemented",\n    \'str_word_count.phpt\': "not implemented",\n    \'str_word_count1.phpt\': "not implemented",\n    \'strip_tags.phpt\': "not implemented",\n    \'strip_tags_basic2.phpt\': "not implemented",\n    \'strip_tags_variation10.phpt\': "not implemented",\n    \'strip_tags_variation11.phpt\': "not implemented",\n    \'strip_tags_variation2.phpt\': "not implemented",\n    \'strip_tags_variation4.phpt\': "not implemented",\n    \'strip_tags_variation5.phpt\': "not implemented",\n    \'strip_tags_variation6.phpt\': "not implemented",\n    \'strip_tags_variation7.phpt\': "not implemented",\n    \'strip_tags_variation8.phpt\': "not implemented",\n    \'strip_tags_variation9.phpt\': "not implemented",\n    \'unpack_error.phpt\': "Invalid format type Z????",\n    \'vfprintf_error4.phpt\': "warning issue",\n    \'vfprintf_variation1.phpt\': "context",\n    \'wordwrap.phpt\': "not implemented",\n\n    \'http_build_query_variation3.phpt\': "need to review",\n    \'join_error.phpt\': "Errors say implode() instead of join()",\n    \'join_variation2.phpt\': "need to review",\n    \'str_replace.phpt\': "need to review",\n    \'stripos_variation10.phpt\': "need to review",\n    \'stripos_variation11.phpt\': "need to review",\n    \'stristr_variation2.phpt\': "For an object it expects: Notice: Object of class sample could not be converted to int",\n    \'strlen.phpt\': "Expects: Warning: strlen() expects parameter 1 to be string, array given got Notice instead",\n    \'strlen_variation1.phpt\': "need to review",\n    \'strncasecmp_variation10.phpt\': "need to review",\n    \'strncasecmp_variation11.phpt\': "need to review",\n    \'strncasecmp_variation4.phpt\': "need to review",\n    \'strncmp_variation4.phpt\': "need to review",\n    \'strrchr_variation10.phpt\': "need to review",\n    \'strrchr_variation11.phpt\': "need to review",\n    \'strrpos_variation10.phpt\': "need to review",\n    \'strrpos_variation11.phpt\': "need to review",\n}\n\n# GENERAL\nmarkers[general_test_dir] = {\n    \'bug47027.phpt\': "Missing ArrayObject class",\n    \'bug60227_4.phpt\': \'SKIP: Unknown phpt section header: EXPECTHEADERS\',\n    \'bug60227_3.phpt\': \'SKIP: Unknown phpt section header: EXPECTHEADERS\',\n    \'bug60227_2.phpt\': \'SKIP: Unknown phpt section header: EXPECTHEADERS\',\n    \'bug60227_1.phpt\': \'SKIP: Unknown phpt section header: EXPECTHEADERS\',\n    \'debug_zval_dump_b_64bit.phpt\': ("NotImplementedError: "\n                                     "abstract base class"),\n    \'debug_zval_dump_v.phpt\': ("NotImplementedError: "\n                               "abstract base class"),\n    \'var_export_basic6.phpt\': "var_dump reports different lengths",\n    \'type.phpt\': "?",\n    \'gettype_settype_basic.phpt\': "?",\n    \'parse_ini_file.phpt\': "parsing",\n    \'print_r_64bit.phpt\': "?",\n    \'parse_ini_string_002.phpt\': "?",\n    \'include_path.phpt\': "?",\n    \'call_user_func_array_variation_003.phpt\': "?",\n    \'call_user_func_array_variation_001.phpt\': "missing call_user_func_array()",\n\n    \'004.phpt\': "not implemented",\n    \'010.phpt\': "not implemented",\n    \'bug27678.phpt\': "not implemented",\n    \'bug29038.phpt\': "not implemented",\n    \'bug32647.phpt\': "not implemented",\n    \'bug34794.phpt\': "not implemented",\n    \'bug39322.phpt\': "not implemented",\n    \'bug40398.phpt\': "not implemented",\n    \'bug40752.phpt\': "not implemented",\n    \'bug41037.phpt\': "not implemented",\n    \'bug41445.phpt\': "not implemented",\n    \'bug41445_1.phpt\': "not implemented",\n    \'bug41970.phpt\': "not implemented",\n    \'bug43293_1.phpt\': "not implemented",\n    \'bug43293_2.phpt\': "not implemented",\n    \'bug43293_3.phpt\': "not implemented",\n    \'bug44394.phpt\': "not implemented",\n    \'bug44394_2.phpt\': "not implemented",\n    \'bug44461.phpt\': "not implemented",\n    \'bug44487.phpt\': "not implemented",\n    \'bug44667.phpt\': "not implemented",\n    \'bug47857.phpt\': "not implemented",\n    \'bug47859.phpt\': "not implemented",\n    \'bug48660.phpt\': "not implemented",\n    \'bug48768.phpt\': "not implemented",\n    \'bug49056.phpt\': "not implemented",\n    \'bug49692.phpt\': "not implemented",\n    \'bug52138.phpt\': "not implemented",\n    \'bug55371.phpt\': "not implemented",\n    \'bug60723.phpt\': "not implemented",\n    \'call_user_func_return.phpt\': "not implemented",\n    \'call_user_method.phpt\': "not implemented",\n    \'call_user_method_002.phpt\': "not implemented",\n    \'callbacks_001.phpt\': "parent as class name",\n    \'callbacks_002.phpt\': "wording",\n    \'closures_001.phpt\': "undefined register_shutdown_function()",\n    \'closures_002.phpt\': "unexpected T_DECLARE",\n    \'debug_zval_dump_e.phpt\': "not implemented",\n    \'debug_zval_dump_o.phpt\': "not implemented",\n    \'dl-cve-2007-4887.phpt\': "not implemented",\n    \'error_get_last.phpt\': "not implemented",\n    \'get_defined_constants_basic.phpt\': slow,\n    \'get_extension_funcs_basic.phpt\': "not implemented",\n    \'get_extension_funcs_error.phpt\': "not implemented",\n    \'get_extension_funcs_variation.phpt\': "not implemented",\n    \'get_loaded_extensions_basic.phpt\': "not implemented",\n    \'get_magic_quotes_runtime.phpt\': "not implemented",\n    \'getopt.phpt\': "not implemented",\n    \'getopt_002.phpt\': "not implemented",\n    \'getopt_003.phpt\': "not implemented",\n    \'getopt_004.phpt\': "not implemented",\n    \'getopt_005.phpt\': "not implemented",\n    \'gettype_settype_error.phpt\': "not implemented",\n    \'get_cfg_var_basic.phpt\': "requires ini parse to return strings",\n    \'get_cfg_var_variation6.phpt\': "requires ini parse to return strings",\n    \'get_cfg_var_variation8.phpt\': "magic_quotes_gpc unsupported",\n    \'get_cfg_var_variation9.phpt\': "requires ini parse to return strings",\n    \'head.phpt\': "not implemented",\n    \'highlight_heredoc.phpt\': "not implemented",\n    \'ini_get_all.phpt\': "not implemented",\n    \'is_callable_basic1.phpt\': "not implemented",\n    \'is_callable_basic2.phpt\': "not implemented",\n    \'is_callable_variation1.phpt\': "not implemented",\n    \'is_callable_variation2.phpt\': "not implemented",\n    \'ob_get_flush_basic.phpt\': "not implemented",\n    \'ob_get_flush_error.phpt\': "not implemented",\n    \'parse_ini_basic.phpt\': "not implemented",\n    \'parse_ini_booleans.phpt\': "not implemented",\n    \'parse_ini_string_001.phpt\': "not implemented",\n    \'phpcredits.phpt\': "not implemented",\n    \'phpcredits2.phpt\': "not implemented",\n    \'phpinfo.phpt\': "not implemented",\n    \'phpinfo2.phpt\': "not implemented",\n    \'proc_open02.phpt\': "not implemented",\n    \'set_magic_quotes_runtime_basic.phpt\': "not implemented",\n    \'set_magic_quotes_runtime_error.phpt\': "not implemented",\n    \'var_dump_64bit.phpt\': "not implemented",\n}\n\nclass SkipAll(dict):\n    def get(self, *args):\n        return \'SKIP: skipping the whole dir\'\n\nmarkers[basic_test_dir] = {\n    \'011.phpt\': "undefined argc argv",\n    \'002.phpt\': "POST",\n    \'003.phpt\': "POST/GET/COOKIE",\n    \'004.phpt\': "POST",\n    \'005.phpt\': "POST",\n    \'013.phpt\': "POST",\n    \'014.phpt\': "POST",\n    \'015.phpt\': "POST",\n    \'016.phpt\': "POST",\n    \'017.phpt\': "POST",\n    \'018.phpt\': "POST",\n    \'019.phpt\': "POST",\n    \'020.phpt\': "POST",\n    \'022.phpt\': "COOKIE",\n    \'023.phpt\': "COOKIE",\n    \'024.phpt\': "HTTP_RAW_POST_DATA",\n    \'025.phpt\': "POST Content-Length",\n    \'027.phpt\': "$php_errormsg",\n    \'bug20539.phpt\': "?",\n    \'bug29971.phpt\': "$_ENV",\n    \'bug51709_1.phpt\': "parse error wording",\n    \'bug51709_2.phpt\': "parse error wording",\n    \'bug53180.phpt\': "order of keys",\n    \'bug54514.phpt\': "?",\n    \'bug61000.phpt\': "?",\n    \'php_egg_logo_guid.phpt\': "undefined php_egg_logo_guid()",\n    \'php_logo_guid.phpt\': "undefined php_logo_guid()",\n    \'php_real_logo_guid.phpt\': "undefined php_real_logo_guid()",\n    \'zend_logo_guid.phpt\': "undefined zend_logo_guid()",\n\n}\nmarkers[classes_test_dir] = {\n    \'__call_002.phpt\': \'missing fatal\',\n    \'__set__get_002.phpt\': "missing fatal",\n    \'__set__get_003.phpt\': "missing fatal",\n    \'abstract_by_interface_001.phpt\': \'order of execution for class defs vs ordinary statements\',\n    \'abstract_by_interface_002.phpt\': \'order of execution for class defs vs ordinary statements\',\n    \'abstract_static.phpt\': \'unexpected T_EVAL\',\n    \'abstract_user_call.phpt\': \'unimplemented case in call_user_func()\',\n    \'array_access_003.phpt\': "ArrayAccess: Fix ++ to raise notice for indirect modification of overloaded element",\n    \'array_access_004.phpt\': "ArrayAccess: Fix ++ to raise notice for indirect modification of overloaded element",\n    \'array_access_009.phpt\': "ArrayAccess: Operator implementation fix required",\n    \'array_access_010.phpt\': "ArrayAccess: Operator implementation fix required",\n    \'array_access_011.phpt\': "ArrayAccess: Operator implementation fix required",\n    \'array_access_012.phpt\': "ArrayAccess: Fix ++ to raise notice for indirect modification of overloaded element",\n    \'autoload_005.phpt\': "__destruct()",\n    \'autoload_010.phpt\': "__autoload() is called twice",\n    \'autoload_011.phpt\': "__autoload() is called twice",\n    \'autoload_013.phpt\': \'?\',\n    \'autoload_014.phpt\': "missing ReflectionMethod",\n    \'autoload_015.phpt\': "missing ReflectionProperty",\n    \'autoload_016.phpt\': \'ReflectionClass missing\',\n    \'autoload_017.phpt\': \'ReflectionClass missing\',\n    \'bug27468.phpt\': "need review",\n    \'bug63462.phpt\': "need review",\n    \'constants_error_003.phpt\': \'error message wording\',\n    \'constants_error_004.phpt\': \'missing fatal\',\n    \'ctor_dtor.phpt\': \'__destruct()\',\n    \'ctor_dtor_inheritance.phpt\': "__destruct()",\n    \'ctor_in_interface_01.phpt\': \'missing fatal (signature)\',\n    \'ctor_in_interface_02.phpt\': \'missing fatal (signature)\',\n    \'ctor_in_interface_03.phpt\': \'missing fatal (signature)\',\n    \'ctor_in_interface_04.phpt\': \'strict warning should be fatal error\',\n    \'ctor_visibility.phpt\': \'error message wording\',\n    \'destructor_and_echo.phpt\': "__destruct()",\n    \'destructor_and_exceptions.phpt\': \'missing additional_catch\',\n    \'destructor_and_globals.phpt\': \'__destruct()\',\n    \'destructor_inheritance.phpt\': \'__destruct()\',\n    \'proc_open02.phpt\': "not implemented",\n    \'set_magic_quotes_runtime_basic.phpt\': "not implemented",\n    \'set_magic_quotes_runtime_error.phpt\': "not implemented",\n    # \'sleep_basic.phpt\': "not implemented",\n    \'sleep_error.phpt\': "not implemented",\n    \'usleep_basic.phpt\': "not implemented",\n    \'usleep_error.phpt\': "not implemented",\n    \'var_dump_64bit.phpt\': "not implemented",\n}\n\n    \'factory_and_singleton_006.phpt\': \'__destruct()\',\n    \'factory_and_singleton_009.phpt\': \'__destruct()\',\n    \'factory_and_singleton_010.phpt\': \'__destruct()\',\n    \'final_ctor1.phpt\': \'Class ReflectionClass not found\',\n    \'final_ctor2.phpt\': \'Class ReflectionClass not found\',\n    \'implicit_instantiation_001.phpt\': "need review",\n    \'inheritance_007.phpt\': \'missing ReflectionClass\',\n    \'interface_method.phpt\': "syntax error, unexpected \';\'",\n    \'interface_method_private.phpt\': \'error message wording\',\n    \'interfaces_003.phpt\': \'typehinting for constructor\',\n    \'iterators_002.phpt\': "missing __destruct()",\n    \'iterators_005.phpt\': "missing fatal (implements Traversable)",\n    \'new_001.phpt\': \'deprecated in PHP\',\n    \'serialize_001.phpt\': "need review",\n    \'static_properties_undeclared_read.phpt\': "missing fatal",\n    \'tostring_001.phpt\': "?",\n    \'tostring_002.phpt\': "__destruct()",\n    \'tostring_003.phpt\': \'missing fatal error (__destruct())\',\n    \'tostring_004.phpt\': \'printf()\',\n    \'type_hinting_004.phpt\': \'set_error_handler()\',\n}\nmarkers[func_test_dir] = {\n    \'005.phpt\': "undefined function register_shutdown_function()",\n    \'005a.phpt\': slow,   # infinity slow for now\n    \'006.phpt\': "problem with ob_buffering",\n    \'007.phpt\': "problem in ini_set()",\n    \'010.phpt\': slow,\n    \'ini_alter.phpt\': "undefined function ini_alter()",\n}\nmarkers[lang_test_dir] = {\n    \'019.phpt\': "T_EVAL",\n    \'031.phpt\': slow,\n    \'038.phpt\': "?",\n    \'045.phpt\': "missing set_time_limit()",\n    \'bug17115.phpt\': "missing create_function()",\n    \'bug20175.phpt\': "deprecated in PHP",\n    \'bug21094.phpt\': "set_error_handler()",\n    \'bug21820.phpt\': "should not parse",\n    \'bug22231.phpt\': "deprecated in PHP",\n    \'bug22510.phpt\': "unexpected T_LIST",\n    \'bug22690.phpt\': "missing create_function()",\n    \'bug23624.phpt\': "does not compile",\n    \'bug24403.phpt\': "problem in preg_replace()",\n    \'bug24658.phpt\': "error wording",\n    \'bug24908.phpt\': "?",\n    \'bug24926.phpt\': "missing create_function()",\n    \'bug24951.phpt\': "?",\n    \'bug25145.phpt\': "undefined _REQUEST",\n    \'bug25922.phpt\': "?",\n    \'bug30578.phpt\': "?",\n    \'bug32828.phpt\': "missing fatal (uncaught exception)",\n    \'bug35176.phpt\': "?",\n    \'bug44827.phpt\': "missing warning",\n    \'bug45392.phpt\': "missing fatal",\n    \'bug55754.phpt\': "Cannot pass parameter 1 by reference",\n    \'catchable_error_002.phpt\': "?",\n    \'each_binary_safety.phpt\': slow,\n    \'engine_assignExecutionOrder_002.phpt\': "?",\n    \'engine_assignExecutionOrder_004.phpt\': "?",\n    \'engine_assignExecutionOrder_007.phpt\': "?",\n    \'error_2_exception_001.phpt\': "undefined trigger_error()",\n    \'foreachLoop.001.phpt\': "problem with current()",\n    \'foreachLoop.005.phpt\': "needs proper refcounting?",\n    \'foreachLoop.006.phpt\': "store_fast_ref() with non-ref",\n    \'foreachLoop.007.phpt\': "should not parse",\n    \'foreachLoop.009.phpt\': "?",\n    \'foreachLoop.011.phpt\': "?",\n    \'foreachLoop.013.phpt\': "parse error",\n    \'foreachLoop.014.phpt\': "?",\n    \'foreachLoop.015.phpt\': "?",\n    \'foreachLoop.016.phpt\': "needs proper refcounting?",\n    \'foreachLoopObjects.003.phpt\': "?",\n    \'foreachLoopObjects.005.phpt\': "?",\n    \'foreachLoopObjects.006.phpt\': "?",\n    \'passByReference_002.phpt\': "wrong kind of fatal",\n    \'passByReference_005.phpt\': "order of warnings",\n    \'passByReference_010.phpt\': "should be strict instead of fatal",\n    \'returnByReference.003.phpt\': "missing warnings",\n    \'returnByReference.004.phpt\': "missing warnings",\n    \'returnByReference.005.phpt\': "missing warnings",\n    \'returnByReference.006.phpt\': "missing warnings",\n    \'returnByReference.007.phpt\': "missing warnings",\n    \'returnByReference.008.phpt\': "missing warnings",\n    \'returnByReference.009.phpt\': "missing warnings",\n    \'script_tag.phpt\': "?",\n    \'short_tags.002.phpt\': "?",\n    \'short_tags.003.phpt\': "?",\n    \'short_tags.004.phpt\': "?",\n    \'type_hints_002.phpt\': "instance numbering",\n    \'type_hints_003.phpt\': "missing fatal",\n}\nmarkers[operators_test_dir] = {\n    \'operator_equals_basic.phpt\': "precision issue in str to float conversion",\n    \'operator_gt_or_equal_basic.phpt\': "precision issue in str to float conversion",\n    \'operator_notequals_basic.phpt\': "precision issue in str to float conversion",\n}\nmarkers[output_test_dir] = {\n    \'bug46897.phpt\': "ob_start() with 3 args",\n    \'bug60282.phpt\': "undefined ob_gzhandler()",\n    \'ob_010.phpt\': "our print_r() does not use output buffering",\n    \'ob_013.phpt\': "undefined ob_list_handlers()",\n    \'ob_015.phpt\': "recursion problem",\n    \'ob_017.phpt\': "flags",\n    \'ob_get_level_basic_001.phpt\': \'does not work prop\',\n    \'ob_get_status.phpt\': "undefined ob_get_status()",\n    \'ob_start_basic_002.phpt\': "undefined get_defined_functions()",\n    \'ob_start_basic_005.phpt\': "undefined ob_list_handlers()",\n    \'ob_start_basic_006.phpt\': "undefined ob_list_handlers()",\n    \'ob_start_basic_unerasable_002.phpt\': "ob_start() with 3 args",\n    \'ob_start_basic_unerasable_003.phpt\': "ob_start() with 3 args",\n    \'ob_start_basic_unerasable_004.phpt\': "ob_start() with 3 args",\n    \'ob_start_basic_unerasable_005.phpt\': "ob_start() with 3 args",\n}\nmarkers[runtest_test_dir] = {\n    \'test002.phpt\': "%x unsupported",\n    \'test004.phpt\': "SKIP: parse error in ini",\n    \'test005.phpt\': "Undefined variable: php_errormsg",\n    \'test007.phpt\': "dirname()",\n    \'test008.phpt\': "division by zero",\n    \'test008a.phpt\': "Undefined variable: php_errormsg",\n    \'test010.phpt\': "SKIP: unknown section STDIN",\n}\nmarkers[security_test_dir] = {\n    \'open_basedir_001.phpt\': \'dir runtime tighting\',\n    \'open_basedir_dir.phpt\': \'dir not implemented\',\n    \'open_basedir_error_log.phpt\': \'?\',\n    \'open_basedir_error_log_variation.phpt\': \'?\',\n    \'open_basedir_glob.phpt\': \'missing glob\',\n    \'open_basedir_glob_variation.phpt\': \'missing glob\',\n    \'open_basedir_linkinfo.phpt\': \'warning missmatch\',\n    \'open_basedir_tempnam.phpt\': \'warning missmatch\',\n}\n\nmarkers[strings_test_dir] = {\n    \'002.phpt\': "problem with php://stdout",\n    \'004.phpt\': "undefined function highlight_string()",\n    \'bug26703.phpt\': "undefined function highlight_string()",\n}\n\n\nmarkers[mysql_test_dir] = {\n    \'bug48754.phpt\': "problems problems",\n    \'bug53649.phpt\': "The used command is not allowed with this MySQL version",\n    \'bug55473.phpt\': "problems problems",\n    \'mysql_create_db.phpt\': "deprecated api",\n    \'mysql_deprecated_api.phpt\': "deprecated",\n    \'mysql_drop_db.phpt\': "deprecated",\n    \'mysql_escape_string.phpt\': \'unimplemented mysql_escape_string\',\n    \'mysql_fetch_array.phpt\': "missing data() printf issues",\n    \'mysql_fetch_field.phpt\': "SKIP: hangs, regexp flags not supported yet",\n    \'mysql_fetch_lengths.phpt\': "?",\n    \'mysql_fetch_object.phpt\': \'still problems\',\n    \'mysql_field_flags.phpt\': "SKIP: regexp flags not supported yet",\n    \'mysql_max_links.phpt\': \'printf() problem\',\n    \'mysql_max_persistent.phpt\': \'printf() problem\',\n    \'mysql_pconn_disable.phpt\': "not finished",\n    \'mysql_pconn_kill.phpt\': "dont have persistent connections for real :)",\n    \'mysql_pconn_max_links.phpt\': \'missing mysql_real_escape_string()\',\n    \'mysql_pconn_reuse.phpt\': \'printf() problem\',\n    \'mysql_phpinfo.phpt\': "?",\n    \'mysql_query_load_data_openbasedir.phpt\': "not finished",\n    \'mysql_result.phpt\': \'?\',\n    \'mysql_sql_safe_mode.phpt\': "?",\n    # \'mysql_stat.phpt\': "missing soundex()",\n    \'mysql_trace_mode.phpt\': \'missing mysql_escape_string()\',\n}\n\nmarkers[network_test_dir] = {\n    \'bug41347.phpt\': \'missing dns_check_record()\',\n    \'closelog_basic.phpt\': \'missing closelog()\',\n    \'closelog_error.phpt\': \'missing closelog()\',\n    \'fsockopen_error.phpt\': \'error\',\n    \'gethostbyname_error003.phpt\':\n    \'GAIError: No address associated with hostname\',\n    \'gethostbyname_error005.phpt\': \'args problem\',\n    \'gethostbyname_error006.phpt\':\n    \'GAIError: No address associated with hostname\',\n    \'gethostbynamel_basic1.phpt\': \'compare problem %a\',\n    \'getmxrr.phpt\': \'missing getmxrr()\',\n    \'http-stream.phpt\': \'Class DomDocument not found\',\n    \'inet.phpt\': \'inet_ntop() takes exactly 2 arguments (1 given)\',\n    \'inet_ipv6.phpt\': \'SKIP: ValueError in SKIPIF\',\n    \'ip_x86_64.phpt\': \'does not work as expected\',\n    \'long2ip_variation1.phpt\': \'does not work as expected\',\n    \'socket_get_status_basic.phpt\': \'missing stream_socket_server()\',\n    \'syslog_error.phpt\': \'missing syslog()\',\n    \'tcp4loop.phpt\': \'missing stream_socket_server()\',\n    \'tcp6loop.phpt\': \'missing stream_socket_server()\',\n    \'udgloop.phpt\': \'missing stream_get_transports()\',\n    \'udp4loop.phpt\': \'missing stream_socket_server()\',\n    \'udp6loop.phpt\': \'missing stream_socket_server()\',\n    \'unixloop.phpt\': \'missing stream_get_transports()\',\n\n}\n\nmarkers[url_test_dir] = {\n    \'get_headers_error_001.phpt\': \'get_headers not implemented\',\n    \'get_headers_error_002.phpt\': \'get_headers not implemented\',\n}\n\nmarkers[session_test_dir] = {\n    \'004.phpt\': \'not implemented\',\n    \'005.phpt\': \'not implemented\',\n    \'012.phpt\': \'not implemented\',\n    \'014.phpt\': \'not implemented\',\n    \'015.phpt\': \'SKIP: parse error in ini\',\n    \'018.phpt\': \'not implemented\',\n    \'020.phpt\': \'not implemented\',\n    \'021.phpt\': \'not implemented\',\n    \'024.phpt\': \'not implemented\',\n    \'025.phpt\': \'not implemented\',\n    \'bug26862.phpt\': \'not implemented\',\n    \'bug31454.phpt\': \'not implemented\',\n    \'bug32330.phpt\': \'not implemented\',\n    \'bug36459.phpt\': \'not implemented\',\n    \'bug41600.phpt\': \'not implemented\',\n    \'bug42596.phpt\': \'not implemented\',\n    \'bug53141.phpt\': \'not implemented\',\n    \'bug55688.phpt\': \'not implemented\',\n    \'bug60634_error_1.phpt\': \'not implemented\',\n    \'bug60634_error_2.phpt\': \'not implemented\',\n    \'bug60634_error_3.phpt\': \'not implemented\',\n    \'bug60634_error_4.phpt\': \'not implemented\',\n    \'bug60634_error_5.phpt\': \'not implemented\',\n    \'bug60634.phpt\': \'not implemented\',\n    \'bug60860.phpt\': \'not implemented\',\n    \'bug61728.phpt\': \'not implemented\',\n    \'bug63379_nodestroy.phpt\': \'not implemented\',\n    \'bug63379.phpt\': \'not implemented\',\n    \'rfc1867_cleanup.phpt\': \'not implemented\',\n    \'rfc1867_disabled_2.phpt\': \'not implemented\',\n    \'rfc1867_disabled.phpt\': \'not implemented\',\n    \'rfc1867_inter.phpt\': \'not implemented\',\n    \'rfc1867_invalid_settings_2.phpt\': \'SKIP: parse error in ini\',\n    \'rfc1867_invalid_settings_2-win.phpt\': \'SKIP: parse error in ini\',\n    \'rfc1867_invalid_settings.phpt\': \'not implemented\',\n    \'rfc1867_invalid_settings-win.phpt\': \'not implemented\',\n    \'rfc1867_no_name.phpt\': \'not implemented\',\n    \'rfc1867.phpt\': \'not implemented\',\n    \'rfc1867_sid_cookie.phpt\': \'not implemented\',\n    \'rfc1867_sid_get_2.phpt\': \'not implemented\',\n    \'rfc1867_sid_get.phpt\': \'not implemented\',\n    \'rfc1867_sid_invalid.phpt\': \'not implemented\',\n    \'rfc1867_sid_only_cookie_2.phpt\': \'not implemented\',\n    \'rfc1867_sid_only_cookie.phpt\': \'not implemented\',\n    \'rfc1867_sid_post.phpt\': \'not implemented\',\n    \'save_handler_closures.inc\': \'not implemented\',\n    \'save_handler.inc\': \'not implemented\',\n\n    \'session_cache_expire_error.phpt\': \'round problem\',\n    \'session_cache_expire_variation2.phpt\': \'not implemented\',\n\n    \'session_decode_error2.phpt\': \'resource as index\',\n    \'session_decode_basic.phpt\': \'instance counter\',\n    \'session_decode_variation2.phpt\': \'problem with _SESSION shold rise notice\',\n    \'session_decode_variation3.phpt\': \'problem with _SESSION shold rise notice\',\n\n    \'session_encode_error2.phpt\': \'resource as index\',\n    \'session_encode_variation1.phpt\': \'nonsense lack of warnings\',\n    \'session_encode_variation7.phpt\': \'php-binary not implemented yet\',\n\n    \'sessionhandler_open_001.phpt\': \'not implemented\',\n    \'session_id_error4.phpt\': \'string length problem..???\',\n\n    \'session_module_name_basic.phpt\': \'not implemented\',\n    \'session_module_name_error.phpt\': \'not implemented\',\n    \'session_module_name_variation1.phpt\': \'not implemented\',\n    \'session_module_name_variation2.phpt\': \'undefined session_set_save_handler()\',\n    \'session_module_name_variation3.phpt\': \'not implemented\',\n\n    \'session_save_path_error.phpt\': \'not implemented\',\n    \'session_save_path_variation2.phpt\': \'not implemented\',\n    \'session_save_path_variation3.phpt\': \'not implemented\',\n    \'session_save_path_variation4.phpt\': \'not implemented\',\n    \'session_save_path_variation5.phpt\': \'not implemented\',\n\n    \'session_set_save_handler_basic.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_001.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_002.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_003.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_004.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_005.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_006.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_007.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_008.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_009.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_010.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_011.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_012.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_013.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_014.phpt\': \'not implemented\',\n    \'session_set_save_handler_class_015.phpt\': \'not implemented\',\n    \'session_set_save_handler_closures.phpt\': \'not implemented\',\n    \'session_set_save_handler_error2.phpt\': \'not implemented\',\n    \'session_set_save_handler_error3.phpt\': \'not implemented\',\n    \'session_set_save_handler_error4.phpt\': \'not implemented\',\n    \'session_set_save_handler_error.phpt\': \'not implemented\',\n    \'session_set_save_handler_iface_001.phpt\': \'not implemented\',\n    \'session_set_save_handler_iface_002.phpt\': \'not implemented\',\n    \'session_set_save_handler_variation1.phpt\': \'not implemented\',\n    \'session_set_save_handler_variation2.phpt\': \'not implemented\',\n    \'session_set_save_handler_variation3.phpt\': \'not implemented\',\n    \'session_set_save_handler_variation4.phpt\': \'not implemented\',\n    \'session_status_disabled.phpt\': \'not implemented\',\n}\n\nmarkers[serialize_test_dir] = {\n    \'003.phpt\': \'EXPECTREGEX\',\n    \'005.phpt\': \'Interface Serialzable not defined\',\n    \'006.phpt\': \'lexer problems,  possibly utf-problem\',\n    \'bug25378.phpt\': \'does not work yet\',\n    \'bug26762.phpt\': \'does not work yet\',\n    \'bug27469.phpt\': \'does not work yet\',\n    \'bug31402.phpt\': \'does not work yet\',\n    \'bug36424.phpt\': \'does not work yet\',\n    \'bug45706.phpt\': \'does not work yet\',\n    \'bug62836_1.phpt\': \'does not work yet\',\n    \'bug62836_2.phpt\': \'does not work yet\',\n    \'bug64354_3.phpt\': \'does not work yet\',\n    \'incomplete_class.phpt\': \'does not work yet\',\n    \'serialization_miscTypes_001.phpt\': \'only 32bit\',\n    \'serialization_objects_001.phpt\': \'does not work yet\',\n    \'serialization_objects_002.phpt\': \'does not work yet\',\n    \'serialization_objects_005.phpt\': \'does not work yet\',\n    \'serialization_objects_006.phpt\': \'does not work yet\',\n    \'serialization_objects_007.phpt\': \'does not work yet\',\n    \'serialization_objects_008.phpt\': \'does not work yet\',\n    \'serialization_objects_009.phpt\': \'does not work yet\',\n    \'serialization_objects_010.phpt\': \'does not work yet\',\n    \'serialization_objects_015.phpt\': \'does not work yet\',\n}\n\nmarkers[streams_test_dir] = {\n    "bug40459.phpt": "SKIP: not implemented",\n    "bug44712.phpt": "SKIP: not implemented",\n    "bug44818.phpt": "SKIP: not implemented",\n    "bug46024.phpt": "SKIP: not implemented",\n    "bug46426.phpt": "SKIP: not implemented",\n    "bug47997.phpt": "SKIP: not implemented",\n    "bug48309.phpt": "SKIP: not implemented",\n    "bug49936.phpt": "SKIP: not implemented",\n    "bug49936_win32.phpt": "SKIP: not implemented",\n    "bug53427.phpt": "SKIP: not implemented",\n    "bug53903.phpt": "SKIP: not implemented",\n    "bug54623.phpt": "SKIP: not implemented",\n    "bug54946.phpt": "SKIP: not implemented",\n    "bug60106.phpt": "SKIP: not implemented",\n    "bug60455_01.phpt": "SKIP: not implemented",\n    "bug60455_02.phpt": "SKIP: not implemented",\n    "bug60455_03.phpt": "SKIP: not implemented",\n    "bug60455_04.phpt": "SKIP: not implemented",\n    "bug60817.phpt": "SKIP: not implemented",\n    "bug61115-1.phpt": "SKIP: not implemented",\n    "bug61115-2.phpt": "SKIP: not implemented",\n    "bug61115.phpt": "SKIP: not implemented",\n    "bug61371-win.phpt": "SKIP: not implemented",\n    "bug61371.phpt": "SKIP: not implemented",\n    "bug63240.phpt": "SKIP: not implemented",\n    "bug64166.phpt": "SKIP: not implemented",\n    "bug64166_2.phpt": "SKIP: not implemented",\n    "bug64166_3.phpt": "SKIP: not implemented",\n    "bug64433.phpt": "SKIP: not implemented",\n    "bug64770.phpt": "SKIP: not implemented",\n    "bug65483.phpt": "SKIP: not implemented",\n    "stream_context_get_params_001.phpt": "SKIP: not implemented",\n    "stream_context_set_option_basic.phpt": "SKIP: not implemented",\n    "stream_context_set_option_error_001.phpt": "SKIP: not implemented",\n    "stream_context_set_option_error_002.phpt": "SKIP: not implemented",\n    "stream_copy_to_stream_socket.phpt": "SKIP: not implemented",\n    "stream_get_contents_001.phpt": "SKIP: not implemented",\n    "stream_get_contents_002.phpt": "SKIP: not implemented",\n    "stream_get_line_NUL_delimiter.phpt": "SKIP: not implemented",\n    "stream_get_line_nb.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_dir_basic.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_file_basic.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_file_error.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_file_variation1.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_file_variation2.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_file_variation4.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_file_variation5.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_process_basic.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_socket_basic.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_socket_variation1.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_socket_variation2.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_socket_variation3.phpt": "SKIP: not implemented",\n    "stream_get_meta_data_socket_variation4.phpt": "SKIP: not implemented",\n    "stream_is_local.phpt": "SKIP: not implemented",\n    "stream_set_chunk_size.phpt": "SKIP: not implemented",\n    "stream_set_timeout_error.phpt": "SKIP: not implemented",\n    "stream_socket_pair.phpt": "SKIP: not implemented",\n}\n\nmarkers[date_test_dir] = {\n    \'bug44742.phpt\': \'SKIP: segmentation fault\',\n    \'date_diff.phpt\': \'SKIP: it takes 10 minutes to execute\',\n    \'date_time_set_variation3.phpt\': \'SKIP: looks like bad test\',\n    \'DatePeriod_wrong_constructor.phpt\': \'DatePeriod not implemented\',\n    \'DateTimeZone_construct_error.phpt\': \'Exception handling\',\n    \'DateTimeZone_getTransitions_basic1.phpt\': \'Not Implemented\',\n    \'DateTimeZone_serialize.phpt\': \'Not Implemented\',\n    \'DateTimeZone_verify.phpt\': "ReflectionClass::getMethods() not Not Implemented",\n    \'DateTime_clone_basic3.phpt\': "iterproperties order broken",\n    \'DateTime_construct_error.phpt\': "handling arguments in builtin needs to be improved",\n    "DateTime_serialize.phpt": "not implemented",\n    "DateTime_verify.phpt": "not implemented",\n    "big_year.phpt": "not implemented",\n    "bug35425.phpt": "not implemented",\n    "bug40743.phpt": "not implemented",\n    "bug41523-64bit.phpt": "not implemented",\n    "bug41709.phpt": "not implemented",\n    "bug42910.phpt": "not implemented",\n    "bug43003.phpt": "not implemented",\n    "bug43075.phpt": "not implemented",\n    "bug43808.phpt": "not implemented",\n    "bug44562.phpt": "not implemented",\n    "bug45529.phpt": "not implemented",\n    "bug45554.phpt": "not implemented",\n    "bug45866.phpt": "not implemented",\n    "bug46108.phpt": "not implemented",\n    "bug46874.phpt": "not implemented",\n    "bug48097.phpt": "not implemented",\n    "bug48476.phpt": "not implemented",\n    "bug48678.phpt": "not implemented",\n    "bug49585.phpt": "not implemented",\n    "bug49700.phpt": "not implemented",\n    "bug49778.phpt": "not implemented",\n    "bug50055.phpt": "not implemented",\n    "bug50392.phpt": "not implemented",\n    "bug51096.phpt": "not implemented",\n    "bug51393.phpt": "not implemented",\n    "bug51866.phpt": "not implemented",\n    "bug52062-64bit.phpt": "not implemented",\n    "bug52113.phpt": "not implemented",\n    "bug52290.phpt": "not implemented",\n    "bug52342.phpt": "not implemented",\n    "bug52430.phpt": "not implemented",\n    "bug52577.phpt": "not implemented",\n    "bug52668.phpt": "not implemented",\n    "bug52808.phpt": "not implemented",\n    "bug53437.phpt": "not implemented",\n    "bug53437_var1.phpt": "not implemented",\n    "bug53437_var2.phpt": "not implemented",\n    "bug53437_var5.phpt": "not implemented",\n    "bug54283.phpt": "not implemented",\n    "bug54316.phpt": "not implemented",\n    "bug54340.phpt": "not implemented",\n    "bug55397.phpt": "not implemented",\n    "bug60236.phpt": "not implemented",\n    "bug62500.phpt": "not implemented",\n    "bug62561.phpt": "not implemented",\n    "bug62852.phpt": "not implemented",\n    "bug62852_var2.phpt": "not implemented",\n    "bug62852_var3.phpt": "not implemented",\n    "bug62896.phpt": "not implemented",\n    "bug63435.phpt": "not implemented",\n    "bug64157.phpt": "not implemented",\n    "date-lenient-create.phpt": "not implemented",\n    "date-lenient.phpt": "not implemented",\n    "date-set-timestamp.phpt": "not implemented",\n    "date_create-2.phpt": "not implemented",\n    "date_create_from_format_basic.phpt": "not implemented",\n    "date_default_timezone_get-4.phpt": "not implemented",\n    "date_default_timezone_get_error.phpt": "not implemented",\n    "date_diff1.phpt": "not implemented",\n    "date_get_last_errors_basic.phpt": "not implemented",\n    "date_modify-2.phpt": "not implemented",\n    "date_modify_variation2.phpt": "not implemented",\n    "date_offset_get_error.phpt": "not implemented",\n    "date_offset_get_variation1.phpt": "not implemented",\n    "date_parse_001.phpt": "not implemented",\n    "date_parse_basic1.phpt": "not implemented",\n    "date_parse_error.phpt": "not implemented",\n    "date_parse_from_format_basic.phpt": "not implemented",\n    "date_parse_variation1.phpt": "not implemented",\n    "date_period.phpt": "not implemented",\n    "date_timezone_get_basic1.phpt": "not implemented",\n    "date_timezone_set_basic1.phpt": "not implemented",\n    "gmdate_variation1.phpt": "not implemented",\n    "gmdate_variation10.phpt": "not implemented",\n    "gmdate_variation9.phpt": "not implemented",\n    "idate_variation5.phpt": "not implemented",\n    "idate_variation6.phpt": "not implemented",\n    "oo_001.phpt": "not implemented",\n    "rfc-datetime_and_daylight_saving_time-type2.phpt": "not implemented",\n    "strtotime3-64bit.phpt": "not implemented",\n    "test-parse-from-format.phpt": "not implemented",\n    "time_error.phpt": "not implemented",\n    "timestamp-in-dst.phpt": "not implemented",\n    "timezone_identifiers_list_wrong_constructor.phpt": "not implemented",\n    "timezone_offset_get_error.phpt": "not implemented",\n    "timezone_offset_get_variation1.phpt": "not implemented",\n    "timezone_offset_get_variation2.phpt": "not implemented",\n    "timezone_transitions_get_basic1.phpt": "not implemented",\n    "timezone_transitions_get_error.phpt": "not implemented",\n    "timezone_transitions_get_variation1.phpt": "not implemented",\n    "timezone_transitions_get_variation2.phpt": "not implemented",\n    "timezone_transitions_get_variation3.phpt": "not implemented",\n\n}\n\nmarkers[pcre_test_dir] = {\n    \'cache_limit.phpt\': \'SKIP: slow and stupid\',\n    \'002.phpt\': \'flag e unsupported\',\n    \'004.phpt\': \'flag e unsupported\',\n    \'006.phpt\': \'backtrack_limit setting via --INI-- not working?\',\n    \'backtrack_limit.phpt\': \'in-progress\',\n    \'bug44191.phpt\': \'preg_grep() unimplemented\',\n    \'bug44925.phpt\': \'preg_grep() unimplemented\',\n    \'bug52732.phpt\': \'SKIP: hangs\',\n    \'grep.phpt\': \'preg_grep() unimplemented\',\n    \'grep2.phpt\': \'preg_grep() unimplemented\',\n    \'preg_grep_basic.phpt\': \'preg_grep() unimplemented\',\n    \'preg_grep_error.phpt\': \'preg_grep() unimplemented\',\n    \'preg_grep_error1.phpt\': \'preg_grep() unimplemented\',\n    \'preg_grep_error2.phpt\': \'preg_grep() unimplemented\',\n    \'preg_match_all_error3.phpt\': "we don\'t get the reference error during compile time",\n    \'preg_replace.phpt\': \'details about error msgs and e parameter\',\n    \'preg_replace_callback2.phpt\': \'create_function() unimplemented\',\n    \'preg_replace_callback3.phpt\': \'details about error msgs\',\n    \'recursion_limit.phpt\': \'recursion_limit setting via --INI-- not working?\',\n    \'split2.phpt\': "ini_set(pcre.recursion_limit) not working?",\n    }\n\nmarkers[Zend_test_dir] = {\n    \'bug40261.phpt\': slow,\n    \'bug40236.phpt\': \'TEST_PHP_EXECUTABLE in env, should only run with -A\',\n    \'bug48408.phpt\': slow,\n    \'bug48409.phpt\': slow,\n    \'bug60978.phpt\': \'SKIP: requires TEST_PHP_EXECUTABLE in env\',\n    \'closure_021.phpt\': slow,\n    \'exception_007.phpt\': slow,\n    \'001.phpt\': \'missing warnings around calling functions with wrong number \'\n                \'of args\',\n    \'002.phpt\': \'details about func_get_arg() investigate\',\n    \'003.phpt\': \'?\',\n    \'005.phpt\': check_sign_only,\n    \'006.phpt\': check_sign_only,\n    \'008.phpt\': \'defining TRUE\',\n    \'015.phpt\': \'undefined trigger_error()\',\n    \'017.phpt\': \'undefined get_loaded_extensions()\',\n    \'019.phpt\': \'?\',\n    \'021.phpt\': "unexpected \':\'",\n    \'030.phpt\': "structure of Exception objects",\n    \'032.phpt\': "?",\n    \'036.phpt\': "toomany warnings",\n    \'037.phpt\': "parse error",\n    \'abstract-static.phpt\': "?",\n    \'access_modifiers_001.phpt\': "error wording",\n    \'access_modifiers_002.phpt\': "error wording",\n    \'access_modifiers_003.phpt\': "error wording",\n    \'access_modifiers_004.phpt\': "error wording",\n    \'access_modifiers_005.phpt\': "error wording",\n    \'access_modifiers_006.phpt\': "error wording",\n    \'add_002.phpt\': "php has the same output as hippy??",\n    \'add_003.phpt\': "php has the same output as hippy??",\n    \'anonymous_func_001.phpt\': "undefined create_function()",\n    \'anonymous_func_002.phpt\': "undefined create_function()",\n    \'anonymous_func_003.phpt\': "undefined create_function()",\n    \'argument_restriction_001.phpt\': "missing &",\n    \'argument_restriction_005.phpt\': "ArrayAccess: Error message text",\n    \'argument_restriction_006.phpt\': "missing strict",\n    \'binary.phpt\': "parse error",\n    \'bug20240.phpt\': "undefined register_shutdown_function()",\n    \'bug24773.phpt\': "missing fatal",\n    \'bug26166.phpt\': "missing fatal",\n    \'bug28377.phpt\': "undefined debug_backtrace()",\n    \'bug28444.phpt\': "string conversion",\n    \'bug29015.phpt\': "?",\n    \'bug29896.phpt\': "problem with set_error_handler()",\n    \'bug30080.phpt\': "instance numbering",\n    \'bug30791.phpt\': "?",\n    \'bug30828.phpt\': "undefined debug_print_backtrace()",\n    \'bug30922.phpt\': "missing fatal error",\n    \'bug30998.phpt\': "?",\n    \'bug32290.phpt\': "call_user_func_array()",\n    \'bug32322.phpt\': "?",\n    \'bug32596.phpt\': "?",\n    \'bug32660.phpt\': "?",\n    \'bug32799.phpt\': "missing output",\n    \'bug32833.phpt\': "?",\n    \'bug33277.phpt\': "?",\n    \'bug33318.phpt\': "throwing non-Exception",\n    \'bug33512.phpt\': "?",\n    \'bug33802.phpt\': "set_error_handler()",\n    \'bug33996.phpt\': "?",\n    \'bug33999.phpt\': "?",\n    \'bug34064.phpt\': "?",\n    \'bug34199.phpt\': "undefined simplexml_load_string()",\n    \'bug34518.phpt\': "?",\n    \'bug34617.phpt\': "undefined xml_parser_create()",\n    \'bug35470.phpt\': "does not parse",\n    \'bug35655.phpt\': "undefined highlight_string()",\n    \'bug36071.phpt\': "problem in Interpreter.CLONE",\n    \'bug36303.phpt\': "?",\n    \'bug36513.phpt\': "missing strip_tags",\n    \'bug36759.phpt\': "__destruct()",\n    \'bug37212.phpt\': "?",\n    \'bug37251.phpt\': "?",\n    \'bug37632.phpt\': "call to protected method",\n    \'bug37811.phpt\': "?",\n    \'bug38047.phpt\': "infinite recursion",\n    \'bug38220.phpt\': "conversion to string",\n    \'bug38461.phpt\': "Cannot access private property",\n    \'bug38624.phpt\': "stack trace",\n    \'bug38779.phpt\': "undefined stream_wrapper_register()",\n    \'bug38779_1.phpt\': "undefined stream_wrapper_register()",\n    \'bug39018.phpt\': "?",\n    \'bug40509.phpt\': "?",\n    \'bug40621.phpt\': "strict vs fatal error",\n    \'bug40705.phpt\': "?",\n    \'bug40770.phpt\': "missing fatal (memory size)",\n    \'bug40833.phpt\': "ArrayAccess",\n    \'bug41026.phpt\': "undefined register_shutdown_function()",\n    \'bug41209.phpt\': "ArrayAccess",\n    \'bug41421.phpt\': "undefined stream_wrapper_register()",\n    \'bug41633_2.phpt\': "?",\n    \'bug41633_3.phpt\': "infinite recursion",\n    \'bug41813.phpt\': "?",\n    \'bug41919.phpt\': "?",\n    \'bug42767.phpt\': "undefined highlight_string()",\n    \'bug42817.phpt\': "Interpreter.CLONE",\n    \'bug42818.phpt\': "Interpreter.CLONE",\n    \'bug42819.phpt\': "missing ArrayObject",\n    \'bug43027.phpt\': "unexpected T_DECLARE",\n    \'bug43175.phpt\': "__call via traditional factory should be caught",\n    \'bug43200.phpt\': "ReflectionClass",\n    \'bug43201.phpt\': "?",\n    \'bug43332_2.phpt\': "\\\\self is an invalid class name",\n    \'bug43343.phpt\': "parse error: should complain about \'\\\\\', not \'::\'",\n    \'bug43344_1.phpt\': "wrong error message in notice",\n    \'bug43344_10.phpt\': "notice should be a fatal",\n    \'bug43344_11.phpt\': "notice should be a fatal",\n    \'bug43344_12.phpt\': "notice should be a fatal",\n    \'bug43344_13.phpt\': "notice should be a fatal",\n    \'bug43344_6.phpt\': "notice should be a fatal",\n    \'bug43344_7.phpt\': "notice should be a fatal",\n    \'bug43344_8.phpt\': "notice should be a fatal",\n    \'bug43344_9.phpt\': "notice should be a fatal",\n    \'bug43450.phpt\': slow,\n    \'bug43703.phpt\': "?",\n    \'bug43918.phpt\': "missing SimpleXMLElement",\n    \'bug44141.phpt\': "Call to private X::__construct()",\n    \'bug44660.phpt\': "?",\n    \'bug44827.phpt\': "missing warnings",\n    \'bug45178.phpt\': "deprecated in PHP",\n    \'bug45186.phpt\': "call_user_func()",\n    \'bug45186_2.phpt\': "call_user_func()",\n    \'bug45805.phpt\': "set_error_handler()",\n    \'bug45862.phpt\': "undefined get_class_vars()",\n    \'bug46106.phpt\': "?",\n    \'bug46196.phpt\': "set_error_handler()",\n    \'bug46238.phpt\': "?",\n    \'bug46241.phpt\': "set_error_handler()",\n    \'bug46304.phpt\': "does not parse",\n    \'bug46381.phpt\': "missing ArrayIterator",\n    \'bug46811.phpt\': "SKIP: parse error in INI",\n    \'bug47320.phpt\': "$php_errormsg",\n    \'bug47516.phpt\': "?",\n    \'bug47572.phpt\': "our late static binding happens later than PHP\'s",\n    \'bug47704.phpt\': "?",\n    \'bug47836.phpt\': "?",\n    \'bug47880.phpt\': "undefined debug_backtrace()",\n    \'bug47981.phpt\': "?",\n    \'bug48228.phpt\': "stack trace",\n    \'bug48248.phpt\': "?",\n    \'bug48667_1.phpt\': "SKIP: small diff in error message",\n    \'bug48693.phpt\': "undefined create_function()",\n    \'bug48770.phpt\': "Call to undefined method C::parent::func()",\n    \'bug48770_2.phpt\': "Call to undefined method C::parent::func2()",\n    \'bug48770_3.phpt\': "Call to undefined method C::self::func2()",\n    \'bug48899.phpt\': "?",\n    \'bug48930.phpt\': "?",\n    \'bug49866.phpt\': "error wording",\n    \'bug49893.phpt\': "__destruct()",\n    \'bug49908.phpt\': "stack trace",\n    \'bug50005.phpt\': "stack trace",\n    \'bug50146.phpt\': "missing ReflectionObject",\n    \'bug50174.phpt\': "missing ReflectionMethod",\n    \'bug50261.phpt\': "?",\n    \'bug50383.phpt\': "$exc->getTrace()",\n    \'bug50810.phpt\': "Fails in a method calling property_exists()",\n    \'bug51394.phpt\': "stack trace",\n    \'bug51421.phpt\': "signature check for ctor",\n    \'bug51822.phpt\': "?",\n    \'bug51827.phpt\': "missing register_shutdown_function()",\n    \'bug52001.phpt\': "?",\n    \'bug52041.phpt\': "extra notice",\n    \'bug52051.phpt\': "undefined bb::bb()",\n    \'bug52160.phpt\': "?",\n    \'bug52193.phpt\': "unexpected &",\n    \'bug52361.phpt\': "conversion to string",\n    \'bug52484.phpt\': "missing fatal",\n    \'bug52484_2.phpt\': "missing fatal",\n    \'bug52484_3.phpt\': "undefined property A::$",\n    \'bug52508.phpt\': "missing parse_ini_file()",\n    \'bug52614.phpt\': "?",\n    \'bug52879.phpt\': "extra notice",\n    \'bug53305.phpt\': "?",\n    \'bug53511.phpt\': "interaction of exceptions and __destruct()",\n    \'bug53629.phpt\': "missing highlight_string()",\n    \'bug53748.phpt\': "missing traits",\n    \'bug54265.phpt\': "str_repeat()",\n    \'bug54268.phpt\': "missing fatal (memory size)",\n    \'bug54305.phpt\': "missing ReflectionMethod",\n    \'bug54547.phpt\': "?",\n    \'bug54585.phpt\': "undefined _GET",\n    \'bug54624.phpt\': "class_alias()",\n    \'bug54910.phpt\': "?",\n    \'bug55007.phpt\': "syntax error in eval()",\n    \'bug55086.phpt\': "missing traits",\n    \'bug55137.phpt\': "missing traits",\n    \'bug55156.phpt\': "missing ReflectionFunction",\n    \'bug55247.phpt\': "unexpected {",\n    \'bug55509.phpt\': "SKIP: LexerError (and also takes too much RAM)",\n    \'bug55705.phpt\': "?",\n    \'bug55825.phpt\': "missing traits",\n    \'bug60099.phpt\': "__HALT_COMPILER issue",\n    \'bug60139.phpt\': "missing gc_collect_cycles()",\n    \'bug60169.phpt\': "unexpected :",\n    \'bug60536_001.phpt\': "missing traits",\n    \'bug60536_002.phpt\': "missing traits",\n    \'bug60536_003.phpt\': "missing traits",\n    \'bug60536_004.phpt\': "missing traits",\n    \'bug60536_005.phpt\': "missing traits",\n    \'bug60573.phpt\': "signature check",\n    \'bug60611.phpt\': "unexpected {",\n    \'bug60613.phpt\': "missing fatal error",\n    \'bug60825.phpt\': "?",\n    \'bug60909_1.phpt\': "missing register_shutdown_function()",\n    \'bug60909_2.phpt\': "missing register_shutdown_function()",\n    \'bug61087.phpt\': "missing parse_ini_file()",\n    \'bug61225.phpt\': "unexpected T_STRING",\n    \'bug61273.phpt\': "call_user_func_array()",\n    \'bug61761.phpt\': "signature check",\n    \'bug61767.phpt\': "infinite recursion",\n    \'bug61782.phpt\': "cloning",\n    \'bug62343.phpt\': "missing class_alias()",\n    \'bug62763.phpt\': "missing register_shutdown_function()",\n    \'bug62892.phpt\': "unexpected T_STRING",\n    \'bug62907.phpt\': "missing traits",\n    \'bug62956.phpt\': "signature check",\n    \'bug63111.phpt\': "missing strict",\n    \'bug63219.phpt\': "unexpected T_STRING",\n    \'bug63305.phpt\': "Parse error unfinished heredoc",\n    \'bug63336.phpt\': "Function.signature_repr()",\n    \'bug63762.phpt\': "missing ReflectionProperty",\n    \'bug63882.phpt\': "SKIP: Hippy does not deal with comparison cycles yet",\n    \'bug63982.phpt\': "cannot access protected property",\n    \'bug64239_1.phpt\': "unexpected T_USE",\n    \'bug64239_2.phpt\': "unexpected T_USE",\n    \'bug64239_3.phpt\': "unexpected T_USE",\n    \'bug64239_4.phpt\': "unexpected T_USE",\n    \'bug64354.phpt\': "missing Serializable",\n    \'bug64417.phpt\': "missing traits",\n    \'bug64578.phpt\': "set_error_handler()",\n    \'bug64660.phpt\': "unexpected }",\n    \'bug64720.phpt\': "missing debug_backtrace()",\n    \'bug64821.1.phpt\': "stack trace",\n    \'bug64821.2.phpt\': "stack trace",\n    \'bug64821.3.phpt\': "stack trace",\n    \'bug64960.phpt\': "set_exception_handler()",\n    \'bug64966.phpt\': "set_error_handler()",\n    \'bug_debug_backtrace.phpt\': "?",\n    \'call_user_func_001.phpt\': "wrong warning",\n    \'call_user_func_002.phpt\': "warning wording",\n    \'call_user_func_003.phpt\': "use references with closure",\n    \'call_user_func_004.phpt\': "?",\n    \'call_user_func_005.phpt\': "?",\n    \'call_with_refs.phpt\': "?",\n    \'callable_type_hint_001.phpt\': "?",\n    \'callable_type_hint_002.phpt\': "?",\n    \'callable_type_hint_003.phpt\': "?",\n    \'cast_to_int.phpt\': "?",\n    \'cast_to_object.phpt\': "?",\n    \'class_alias_009.phpt\': "missing fatal",\n    \'class_exists_003.phpt\': "?",\n    \'clone_001.phpt\': "?",\n    \'clone_003.phpt\': "?",\n    \'closure_005.phpt\': "__destruct()",\n    \'closure_015.phpt\': "set_error_handler()",\n    \'closure_016.phpt\': "is_callable()",\n    \'closure_017.phpt\': "destructor issue: probably doesn\'t make sense in hippy",\n    \'closure_020.phpt\': "var_dump() on closure object",\n    \'closure_025.phpt\': "?",\n    \'closure_026.phpt\': "?",\n    \'closure_027.phpt\': "?",\n    \'closure_031.phpt\': "?",\n    \'closure_032.phpt\': "?",\n    \'closure_033.phpt\': "?",\n    \'closure_034.phpt\': "?",\n    \'closure_035.phpt\': "?",\n    \'closure_036.phpt\': "?",\n    \'closure_038.phpt\': "?",\n    \'closure_039.phpt\': "?",\n    \'closure_040.phpt\': "?",\n    \'closure_041.phpt\': "?",\n    \'closure_042.phpt\': "?",\n    \'closure_043.phpt\': "?",\n    \'closure_044.phpt\': "?",\n    \'closure_045.phpt\': "?",\n    \'closure_046.phpt\': "?",\n    \'compare_001_64bit.phpt\': "?",\n    \'compare_003_64bit.phpt\': "?",\n    \'compare_004_64bit.phpt\': "?",\n    \'compare_005_64bit.phpt\': "?",\n    \'compare_006_64bit.phpt\': "?",\n    \'constants_002.phpt\': "?",\n    \'debug_backtrace_limit.phpt\': "?",\n    \'debug_backtrace_options.phpt\': "?",\n    \'debug_print_backtrace_limit.phpt\': "?",\n    \'declare_001.phpt\': "?",\n    \'declare_003.phpt\': "?",\n    \'decrement_001_64bit.phpt\': "?",\n    \'dereference_002.phpt\': "instance numbering",\n    \'dereference_012.phpt\': "conversion to string",\n    \'dtor_scope.phpt\': "?",\n    \'dynamic_call_001.phpt\': "missing fatal",\n    \'dynamic_call_004.phpt\': "missing fatal",\n    \'errmsg_005.phpt\': "wording function/method",\n    \'errmsg_009.phpt\': "Fatal Error/Parse Error",\n    \'errmsg_010.phpt\': "Fatal Error/Parse Error",\n    \'errmsg_013.phpt\': "parameters with array type hint can only be an array or NULL",\n    \'errmsg_018.phpt\': "Strict vs Fatal",\n    \'errmsg_019.phpt\': "wording",\n    \'errmsg_020.phpt\': "phpinfo has been desabled???",\n    \'errmsg_021.phpt\': "disabling classes missing ... pfff",\n    \'errmsg_022.phpt\': "wording",\n    \'errmsg_027.phpt\': "Class declarations may not be nested",\n    \'errmsg_035.phpt\': "wording",\n    \'errmsg_036.phpt\': "wording",\n    \'errmsg_041.phpt\': "what???",\n    \'errmsg_042.phpt\': "Key element cannot be a reference",\n    \'exception_006.phpt\': "undefined restore_exception_handler()",\n    \'exception_008.phpt\': "__destruct()",\n    \'exception_handler_002.phpt\': "stack trace",\n    \'exception_handler_004.phpt\': "?",\n    \'exception_handler_006.phpt\': "?",\n    \'fr47160.phpt\': "?",\n    \'function_arguments_002.phpt\': \'PHP syntax error say what token it was expecting\',\n    \'gc_001.phpt\': "?",\n    \'gc_002.phpt\': "?",\n    \'gc_003.phpt\': "?",\n    \'gc_004.phpt\': "?",\n    \'gc_005.phpt\': "?",\n    \'gc_006.phpt\': "?",\n    \'gc_007.phpt\': "?",\n    \'gc_008.phpt\': "?",\n    \'gc_009.phpt\': "?",\n    \'gc_010.phpt\': "?",\n    \'gc_011.phpt\': "?",\n    \'gc_012.phpt\': "?",\n    \'gc_013.phpt\': "?",\n    \'gc_014.phpt\': "?",\n    \'gc_015.phpt\': "?",\n    \'gc_016.phpt\': "?",\n    \'gc_017.phpt\': "?",\n    \'gc_018.phpt\': "?",\n    \'gc_019.phpt\': "?",\n    \'gc_020.phpt\': "?",\n    \'gc_021.phpt\': "?",\n    \'gc_022.phpt\': "?",\n    \'gc_023.phpt\': "?",\n    \'gc_024.phpt\': "?",\n    \'gc_026.phpt\': "?",\n    \'gc_027.phpt\': "?",\n    \'gc_028.phpt\': "?",\n    \'gc_029.phpt\': "?",\n    \'gc_030.phpt\': "?",\n    \'gc_031.phpt\': "?",\n    \'gc_032.phpt\': "?",\n    \'get_class_methods_002.phpt\': "Missing: Strict Standards: Redefining already defined constructor for class B in %s on line %d",\n    \'get_class_vars_001.phpt\': "?",\n    \'get_class_vars_002.phpt\': "?",\n    \'get_class_vars_003.phpt\': "?",\n    \'get_class_vars_004.phpt\': "?",\n    \'get_class_vars_005.phpt\': "?",\n    \'get_class_vars_006.phpt\': "?",\n    \'get_class_vars_007.phpt\': "?",\n    \'get_defined_functions_basic.phpt\': "?",\n    \'get_defined_functions_error.phpt\': "?",\n    \'get_required_files.phpt\': "?",\n    \'globals_001.phpt\': "?",\n    \'globals_002.phpt\': "?",\n    \'globals_003.phpt\': "?",\n    \'globals_004.phpt\': "?",\n    \'halt03.phpt\': "?",\n    \'halt_compiler2.phpt\': "?",\n    \'halt_compiler3.phpt\': "?",\n    \'instanceof_001.phpt\': "missing create_function()",\n    \'inter_007.phpt\': "class_alias()",\n    \'isset_003.phpt\': "?",\n    \'isset_003_2_4.phpt\': "?",\n    \'jump06.phpt\': "?",\n    \'jump12.phpt\': "?",\n    \'list_003.phpt\': "?",\n    \'list_006.phpt\': "?",\n    \'list_007.phpt\': "?",\n    \'lsb_006.phpt\': "?",\n    \'lsb_007.phpt\': "?",\n    \'lsb_008.phpt\': "?",\n    \'lsb_009.phpt\': "?",\n    \'lsb_010.phpt\': "?",\n    \'lsb_021.phpt\': "?",\n    \'lsb_022.phpt\': "?",\n    \'magic_by_ref_001.phpt\': "missing fatal",\n    \'magic_by_ref_002.phpt\': "missing fatal",\n    \'magic_by_ref_003.phpt\': "missing fatal",\n    \'magic_by_ref_004.phpt\': "missing fatal",\n    \'magic_by_ref_005.phpt\': "missing fatal",\n    \'magic_by_ref_006.phpt\': "missing fatal",\n    \'magic_by_ref_007.phpt\': "missing fatal",\n    \'magic_methods_002.phpt\': "missing warning",\n    \'magic_methods_003.phpt\': "missing warning",\n    \'magic_methods_004.phpt\': "missing warning",\n    \'magic_methods_006.phpt\': "missing warning",\n    \'magic_methods_007.phpt\': "missing fatal",\n    \'magic_methods_008.phpt\': "?",\n    \'magic_methods_009.phpt\': "missing warning",\n    \'magic_methods_010.phpt\': "missing fatal",\n    \'method_static_var.phpt\': "?",\n    \'nowdoc_013.phpt\': "missing highlight_string()",\n    \'nowdoc_014.phpt\': "missing highlight_string()",\n    \'nowdoc_015.phpt\': "missing trigger_error()",\n    \'ns_029.phpt\': "?",\n    \'ns_033.phpt\': "?",\n    \'ns_035.phpt\': "missing ArrayObject",\n    \'ns_036.phpt\': "missing ArrayObject",\n    \'ns_051.phpt\': "need to do actual constant lookup at compile-time",\n    \'ns_054.phpt\': "missing SplObserver",\n    \'ns_056.phpt\': "missing SplObserver",\n    \'ns_057.phpt\': "notice should be a fatal",\n    \'ns_058.phpt\': "notice should be a fatal",\n    \'ns_059.phpt\': "missing fatal",\n    \'ns_068.phpt\': "missing fatal",\n    \'ns_071.phpt\': "?",\n    \'ns_075.phpt\': "?",\n    \'ns_076.phpt\': "notice should be a fatal",\n    \'ns_077_1.phpt\': "notice should be a fatal",\n    \'ns_077_2.phpt\': "notice should be a fatal",\n    \'ns_077_3.phpt\': "notice should be a fatal",\n    \'ns_077_4.phpt\': "notice should be a fatal",\n    \'ns_077_5.phpt\': "notice should be a fatal",\n    \'ns_077_6.phpt\': "notice should be a fatal",\n    \'ns_077_7.phpt\': "notice should be a fatal",\n    \'ns_077_8.phpt\': "notice should be a fatal",\n    \'ns_083.phpt\': "Namespace decl has to be the first statement",\n    \'ns_086.phpt\': "T_DECLARE",\n    \'ns_087.phpt\': "?",\n    \'objects_001.phpt\': "missing notice",\n    \'objects_005.phpt\': "signature check",\n    \'objects_006.phpt\': "signature check",\n    \'objects_007.phpt\': "signature check",\n    \'objects_010.phpt\': "missing strict",\n    \'objects_013.phpt\': "missing fatal",\n    \'objects_014.phpt\': "missing fatal",\n    \'objects_024.phpt\': "accessing static property as non-static",\n    \'objects_025.phpt\': "missing fatal error",\n    \'objects_027.phpt\': "Cannot access static::",\n    \'offset_array.phpt\': "Illegal offset type: resource",\n    \'offset_assign.phpt\': "missing fatal error",\n    \'offset_string.phpt\': "missing notice: offset cast",\n    \'settype_double.phpt\': "?",\n    \'settype_int.phpt\': "?",\n    \'settype_object.phpt\': "?",\n    \'settype_resource.phpt\': "?",\n    \'strict_001.phpt\': "Illegal offset type: resource",\n    \'trait_exists_001.phpt\': "?",\n    \'trait_exists_002.phpt\': "?",\n    \'trait_exists_003.phpt\': "?",\n    \'unset_cv03.phpt\': "missing notice",\n    \'unset_cv05.phpt\': "session_start()",\n    \'unset_cv09.phpt\': "missing notice",\n\n}\n\nmarkers[\'ext/reflection\'] = {\n    \'001.phpt\': \'?\',\n    \'002.phpt\': \'?\',\n    \'003.phpt\': \'?\',\n    \'004.phpt\': \'?\',\n    \'005.phpt\': \'?\',\n    \'006.phpt\': \'?\',\n    \'007.phpt\': \'?\',\n    \'008.phpt\': \'?\',\n    \'009.phpt\': \'?\',\n    \'026.phpt\': \'?\',\n    \'ReflectionClass_CannotClone_basic.phpt\': \'?\',\n    \'ReflectionClass_FileInfo_basic.phpt\': \'?\',\n    \'ReflectionClass_FileInfo_error.phpt\': \'?\',\n    \'ReflectionClass_constructor_002.phpt\': \'?\',\n    \'ReflectionClass_export_basic1.phpt\': \'?\',\n    \'ReflectionClass_export_basic2.phpt\': \'?\',\n    \'ReflectionClass_getConstant_basic.phpt\': \'?\',\n    \'ReflectionClass_getConstant_error.phpt\': \'?\',\n    \'ReflectionClass_getConstructor_basic.phpt\': \'?\',\n    \'ReflectionClass_getDefaultProperties_001.phpt\': \'?\',\n    \'ReflectionClass_getDocComment_001.phpt\': \'?\',\n    \'ReflectionClass_getExtensionName_variation.phpt\': \'?\',\n    \'ReflectionClass_getExtension_variation.phpt\': \'?\',\n    \'ReflectionClass_getInterfaces_001.phpt\': \'?\',\n    \'ReflectionClass_getInterfaces_002.phpt\': \'?\',\n    \'ReflectionClass_getInterfaces_003.phpt\': \'?\',\n    \'ReflectionClass_getMethod_001.phpt\': \'?\',\n    \'ReflectionClass_getMethods_001.phpt\': \'?\',\n    \'ReflectionClass_getMethods_002.phpt\': \'?\',\n    \'ReflectionClass_getMethods_003.phpt\': \'?\',\n    \'ReflectionClass_getModifierNames_basic.phpt\': \'?\',\n    \'ReflectionClass_getModifiers_basic.phpt\': \'?\',\n    \'ReflectionClass_getName_error1.phpt\': \'?\',\n    \'ReflectionClass_getNamespaceName.phpt\': \'?\',\n    \'ReflectionClass_getParentClass.phpt\': \'?\',\n    \'ReflectionClass_getParentClass_001.phpt\': \'?\',\n    \'ReflectionClass_getProperties_001.phpt\': \'?\',\n    \'ReflectionClass_getProperties_003.phpt\': \'?\',\n    \'ReflectionClass_getProperty_001.phpt\': \'?\',\n    \'ReflectionClass_getProperty_002.phpt\': \'?\',\n    \'ReflectionClass_getProperty_003.phpt\': \'?\',\n    \'ReflectionClass_getProperty_004.phpt\': \'?\',\n    \'ReflectionClass_getStaticPropertyValue_001_2_4.phpt\': \'?\',\n    \'ReflectionClass_getStaticPropertyValue_002.phpt\': \'?\',\n    \'ReflectionClass_hasConstant_001.phpt\': \'?\',\n    \'ReflectionClass_hasProperty_001.phpt\': \'?\',\n    \'ReflectionClass_hasProperty_basic.phpt\': \'?\',\n    \'ReflectionClass_implementsInterface_001.phpt\': \'?\',\n    \'ReflectionClass_isCloneable_002.phpt\': \'?\',\n    \'ReflectionClass_isFinal_basic.phpt\': \'?\',\n    \'ReflectionClass_isInstance_basic.phpt\': \'?\',\n    \'ReflectionClass_isInstance_error.phpt\': \'?\',\n    \'ReflectionClass_isInstantiable_variation.phpt\': \'?\',\n    \'ReflectionClass_isInterface_basic.phpt\': \'?\',\n    \'ReflectionClass_isInternal_basic.phpt\': \'?\',\n    \'ReflectionClass_isInternal_error.phpt\': \'?\',\n    \'ReflectionClass_isIterateable_001.phpt\': \'?\',\n    \'ReflectionClass_isIterateable_basic.phpt\': \'?\',\n    \'ReflectionClass_isIterateable_variation1.phpt\': \'?\',\n    \'ReflectionClass_isSubclassOf_002.phpt\': \'?\',\n    \'ReflectionClass_isSubclassOf_basic.phpt\': \'?\',\n    \'ReflectionClass_isSubclassOf_error1.phpt\': \'?\',\n    \'ReflectionClass_isUserDefined_basic.phpt\': \'?\',\n    \'ReflectionClass_isUserDefined_error.phpt\': \'?\',\n    \'ReflectionClass_modifiers_001.phpt\': \'?\',\n    \'ReflectionClass_modifiers_002.phpt\': \'?\',\n    \'ReflectionClass_newInstanceArgs_001.phpt\': \'?\',\n    \'ReflectionClass_newInstanceArgs_002.phpt\': \'?\',\n    \'ReflectionClass_newInstanceWithoutConstructor.phpt\': \'?\',\n    \'ReflectionClass_newInstance_001.phpt\': \'?\',\n    \'ReflectionClass_setStaticPropertyValue_001_2_4.phpt\': \'?\',\n    \'ReflectionClass_setStaticPropertyValue_002.phpt\': \'?\',\n    \'ReflectionClass_toString_001.phpt\': \'?\',\n    \'ReflectionClass_toString_002.phpt\': \'?\',\n    \'ReflectionClass_toString_003.phpt\': \'?\',\n    \'ReflectionExtension_constructor_basic.phpt\': \'?\',\n    \'ReflectionExtension_constructor_error.phpt\': \'?\',\n    \'ReflectionExtension_export_basic.phpt\': \'?\',\n    \'ReflectionExtension_getClassNames_basic.phpt\': \'?\',\n    \'ReflectionExtension_getClassNames_variation1.phpt\': \'?\',\n    \'ReflectionExtension_getClasses_basic.phpt\': \'?\',\n    \'ReflectionExtension_getDependencies_variation2.phpt\': \'?\',\n    \'ReflectionExtension_getName_basic.phpt\': \'?\',\n    \'ReflectionExtension_getVersion_basic.phpt\': \'?\',\n    \'ReflectionExtension_info_basic.phpt\': \'?\',\n    \'ReflectionExtension_isPersistant.phpt\': \'?\',\n    \'ReflectionExtension_isTemporary.phpt\': \'?\',\n    \'ReflectionFunction_001.phpt\': \'?\',\n    \'ReflectionFunction_construct.001.phpt\': \'?\',\n    \'ReflectionFunction_getClosure_basic.phpt\': \'?\',\n    \'ReflectionFunction_getClosure_error.phpt\': \'?\',\n    \'ReflectionFunction_getDocComment.001.phpt\': \'?\',\n    \'ReflectionFunction_getExtension.phpt\': \'?\',\n    \'ReflectionFunction_getExtensionName.phpt\': \'?\',\n    \'ReflectionFunction_getFileName.001.phpt\': \'?\',\n    \'ReflectionFunction_getFileName.002.phpt\': \'?\',\n    \'ReflectionFunction_getNamespaceName.phpt\': \'?\',\n    \'ReflectionMethod_006.phpt\': \'?\',\n    \'ReflectionMethod_basic1.phpt\': \'?\',\n    \'ReflectionMethod_basic2.phpt\': \'?\',\n    \'ReflectionMethod_basic3.phpt\': \'?\',\n    \'ReflectionMethod_basic4.phpt\': \'?\',\n    \'ReflectionMethod_constructor_basic.phpt\': \'?\',\n    \'ReflectionMethod_constructor_error1.phpt\': \'?\',\n    \'ReflectionMethod_constructor_error2.phpt\': \'?\',\n    \'ReflectionMethod_getClosure_basic.phpt\': \'?\',\n    \'ReflectionMethod_getClosure_error.phpt\': \'?\',\n    \'ReflectionMethod_getDocComment_basic.phpt\': \'?\',\n    \'ReflectionMethod_getDocComment_error.phpt\': \'?\',\n    \'ReflectionMethod_getModifiers_basic.phpt\': \'?\',\n    \'ReflectionMethod_getStaticVariables_basic.phpt\': \'?\',\n    \'ReflectionMethod_invokeArgs_basic.phpt\': \'?\',\n    \'ReflectionMethod_invokeArgs_error1.phpt\': \'?\',\n    \'ReflectionMethod_invokeArgs_error2.phpt\': \'?\',\n    \'ReflectionMethod_invokeArgs_error3.phpt\': \'?\',\n    \'ReflectionMethod_invoke_basic.phpt\': \'?\',\n    \'ReflectionMethod_invoke_error1.phpt\': \'?\',\n    \'ReflectionMethod_invoke_error2.phpt\': \'?\',\n    \'ReflectionMethod_returnsReference_basic.phpt\': \'?\',\n    \'ReflectionMethod_setAccessible.phpt\': \'?\',\n    \'ReflectionObject_FileInfo_basic.phpt\': \'?\',\n    \'ReflectionObject_FileInfo_error.phpt\': \'?\',\n    \'ReflectionObject___toString_basic1.phpt\': \'?\',\n    \'ReflectionObject___toString_basic2.phpt\': \'?\',\n    \'ReflectionObject_constructor_basic.phpt\': \'?\',\n    \'ReflectionObject_constructor_error.phpt\': \'?\',\n    \'ReflectionObject_export_basic1.phpt\': \'?\',\n    \'ReflectionObject_export_basic2.phpt\': \'?\',\n    \'ReflectionObject_export_basic3.phpt\': \'?\',\n    \'ReflectionObject_getConstant_basic.phpt\': \'?\',\n    \'ReflectionObject_getConstant_error.phpt\': \'?\',\n    \'ReflectionObject_getConstants_basic.phpt\': \'?\',\n    \'ReflectionObject_getConstants_error.phpt\': \'?\',\n    \'ReflectionObject_getConstructor_basic.phpt\': \'?\',\n    \'ReflectionObject_getConstructor_error.phpt\': \'?\',\n    \'ReflectionObject_getName_basic.phpt\': \'?\',\n    \'ReflectionObject_getName_error.phpt\': \'?\',\n    \'ReflectionObject_getName_error1.phpt\': \'?\',\n    \'ReflectionObject_isInstance_basic.phpt\': \'?\',\n    \'ReflectionObject_isInstance_error.phpt\': \'?\',\n    \'ReflectionObject_isInstantiable_basic.phpt\': \'?\',\n    \'ReflectionObject_isInstantiable_error.phpt\': \'?\',\n    \'ReflectionObject_isInstantiable_variation.phpt\': \'?\',\n    \'ReflectionObject_isInternal_basic.phpt\': \'?\',\n    \'ReflectionObject_isInternal_error.phpt\': \'?\',\n    \'ReflectionObject_isSubclassOf.002.phpt\': \'?\',\n    \'ReflectionObject_isSubclassOf_basic.phpt\': \'?\',\n    \'ReflectionObject_isSubclassOf_error.phpt\': \'?\',\n    \'ReflectionObject_isUserDefined_basic.phpt\': \'?\',\n    \'ReflectionObject_isUserDefined_error.phpt\': \'?\',\n    \'ReflectionParameter_001.phpt\': \'?\',\n    \'ReflectionParameter_002.phpt\': \'?\',\n    \'ReflectionParameter_003.phpt\': \'?\',\n    \'ReflectionParameter_DefaultValueConstant_basic1.phpt\': \'?\',\n    \'ReflectionParameter_DefaultValueConstant_basic2.phpt\': \'?\',\n    \'ReflectionParameter_DefaultValueConstant_error.phpt\': \'?\',\n    \'ReflectionParameter_canBePassedByValue.phpt\': \'?\',\n    \'ReflectionParameter_export_basic.phpt\': \'?\',\n    \'ReflectionParameter_export_error.phpt\': \'?\',\n    \'ReflectionParameter_export_error2.phpt\': \'?\',\n    \'ReflectionParameter_export_error3.phpt\': \'?\',\n    \'ReflectionParameter_getDeclaringFunction_basic.phpt\': \'?\',\n    \'ReflectionParameter_getPosition_basic.phpt\': \'?\',\n    \'ReflectionParameter_invalidMethodInConstructor.phpt\': \'?\',\n    \'ReflectionParameter_isDefault.phpt\': \'?\',\n    \'ReflectionParameter_toString_basic.phpt\': \'?\',\n    \'ReflectionProperty_basic2.phpt\': \'missing ::getDocComment()\',\n    \'ReflectionProperty_getDocComment_basic.phpt\': \'missing ::getDocComment()\',\n    \'ReflectionProperty_getDocComment_error.phpt\': \'missing ::getDocComment()\',\n    \'ReflectionProperty_getModifiers_basic.phpt\': \'some flags are missing\',\n    \'ReflectionProperty_getValue_error.phpt\': \'?\',\n    \'ReflectionProperty_setAccessible.phpt\': \'?\',\n    \'ReflectionProperty_setValue_error.phpt\': \'?\',\n    \'bug26695.phpt\': \'?\',\n    \'bug29268.phpt\': \'?\',\n    \'bug29523.phpt\': \'?\',\n    \'bug29828.phpt\': \'?\',\n    \'bug29986.phpt\': \'?\',\n    \'bug30148.phpt\': \'?\',\n    \'bug30209.phpt\': \'?\',\n    \'bug30856.phpt\': \'?\',\n    \'bug31651.phpt\': \'?\',\n    \'bug32981.phpt\': \'?\',\n    \'bug33312.phpt\': \'?\',\n    \'bug33389.phpt\': \'?\',\n    \'bug36308.phpt\': \'?\',\n    \'bug37964.phpt\': \'?\',\n    \'bug38132.phpt\': \'?\',\n    \'bug38194.phpt\': \'?\',\n    \'bug38217.phpt\': \'?\',\n    \'bug38465.phpt\': \'?\',\n    \'bug38653.phpt\': \'?\',\n    \'bug38942.phpt\': \'?\',\n    \'bug39884.phpt\': \'?\',\n    \'bug40431.phpt\': \'?\',\n    \'bug40794.phpt\': \'?\',\n    \'bug41061.phpt\': \'?\',\n    \'bug42976.phpt\': \'?\',\n    \'bug43926.phpt\': \'?\',\n    \'bug45571.phpt\': \'?\',\n    \'bug45765.phpt\': \'?\',\n    \'bug46064.phpt\': \'?\',\n    \'bug46064_2.phpt\': \'?\',\n    \'bug46205.phpt\': \'?\',\n    \'bug47254.phpt\': \'?\',\n    \'bug48757.phpt\': \'?\',\n    \'bug49074.phpt\': \'?\',\n    \'bug49719.phpt\': \'?\',\n    \'bug51905.phpt\': \'Call to undefined method ReflectionParameter::isDefaultValueAvailable()\',\n    \'bug51911.phpt\': \'Call to undefined method ReflectionParameter::isDefaultValueAvailable()\',\n    \'bug52057.phpt\': \'?\',\n    \'bug52854.phpt\': \'?\',\n    \'bug53366.phpt\': \'?\',\n    \'bug60357.phpt\': \'?\',\n    \'bug60367.phpt\': \'?\',\n    \'bug61388.phpt\': \'?\',\n    \'bug62384.phpt\': \'?\',\n    \'bug62715.phpt\': \'?\',\n    \'bug63399.phpt\': \'?\',\n    \'bug63614.phpt\': \'?\',\n    \'bug64239.phpt\': \'?\',\n    \'closures_001.phpt\': \'?\',\n    \'closures_002.phpt\': \'?\',\n    \'closures_003.phpt\': \'?\',\n    \'closures_003_v1.phpt\': \'?\',\n    \'closures_004.phpt\': \'?\',\n    \'parameters_001.phpt\': \'?\',\n    \'parameters_002.phpt\': \'?\',\n    \'property_exists.phpt\': \'?\',\n    \'traits001.phpt\': \'?\',\n    \'traits002.phpt\': \'?\',\n    \'traits003.phpt\': \'?\',\n    \'traits004.phpt\': \'?\',\n    \'traits005.phpt\': \'?\',\n}\n\nmarkers[spl_test_dir] = {\n    \'array_001.phpt\': "missing notice on unset()",\n    \'array_002.phpt\': "wrong instance number",\n    \'array_008.phpt\': "Missing ArrayObject",\n    \'array_010.phpt\': "Missing ArrayObject",\n    \'array_011.phpt\': "Missing LimitIterator",\n    \'array_012.phpt\': "Missing ArrayIterator",\n    \'array_013.phpt\': "?",\n    \'array_014.phpt\': "Missing ArrayIterator",\n    \'array_015.phpt\': "Missing ArrayObject",\n    \'array_017.phpt\': "Missing ArrayObject",\n    \'array_019.phpt\': "Missing ArrayObject",\n    \'array_022.phpt\': "SKIP: infinite loop when $ao->storage === $ao",\n    \'array_023.phpt\': "Missing ArrayObject",\n    \'array_024.phpt\': "Missing ArrayObject",\n    \'array_025.phpt\': "Missing ArrayObject",\n    \'array_026.phpt\': "Missing ArrayObject",\n    \'arrayObject_asort_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject_asort_basic2.phpt\': "Missing ArrayObject",\n    \'arrayObject_clone_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject_clone_basic2.phpt\': "Missing ArrayObject",\n    \'arrayObject_clone_basic3.phpt\': "Missing ArrayObject",\n    \'arrayObject___construct_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject___construct_basic2.phpt\': "Missing ArrayObject",\n    \'arrayObject___construct_basic3.phpt\': "Missing ArrayObject",\n    \'arrayObject___construct_basic4.phpt\': "Missing ArrayObject",\n    \'arrayObject___construct_basic5.phpt\': "Missing ArrayObject",\n    \'arrayObject___construct_basic6.phpt\': "Missing ArrayObject",\n    \'arrayObject___construct_error1.phpt\': "Missing ArrayObject",\n    \'arrayObject___construct_error2.phpt\': "Missing ArrayObject",\n    \'arrayObject_count_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject_exchangeArray_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject_exchangeArray_basic2.phpt\': "Missing ArrayObject",\n    \'arrayObject_exchangeArray_basic3.phpt\': "Missing ArrayObject",\n    \'arrayObject_getFlags_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject_getFlags_basic2.phpt\': "Missing ArrayObject",\n    \'arrayObject_getIteratorClass_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject_ksort_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject_ksort_basic2.phpt\': "Missing ArrayObject",\n    \'arrayObject_magicMethods1.phpt\': "Missing ArrayObject",\n    \'arrayObject_magicMethods3.phpt\': "Missing ArrayObject",\n    \'arrayObject_magicMethods4.phpt\': "Missing ArrayObject",\n    \'arrayObject_magicMethods6.phpt\': "Missing ArrayObject",\n    \'arrayObject_natcasesort_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject_natsort_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject_setFlags_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject_setFlags_basic2.phpt\': "Missing ArrayObject",\n    \'arrayObject_setIteratorClass_error1.phpt\': "Missing ArrayObject",\n    \'arrayObject_uasort_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject_uasort_error1.phpt\': "Missing ArrayObject",\n    \'arrayObject_uksort_basic1.phpt\': "Missing ArrayObject",\n    \'arrayObject_uksort_error1.phpt\': "Missing ArrayObject",\n    \'ArrayObject_unserialize_empty_string.phpt\': "Missing ArrayObject",\n    \'bug31346.phpt\': "?",\n    \'bug31348.phpt\': "?",\n    \'bug33136.phpt\': "?",\n    \'bug34548.phpt\': "?",\n    \'bug36941.phpt\': "?",\n    \'bug37457.phpt\': "Hippy calls current() and key() only when needed",\n    \'bug38325.phpt\': "?",\n    \'bug38618.phpt\': "?",\n    \'bug40036.phpt\': "?",\n    \'bug41528.phpt\': "?",\n    \'bug41691.phpt\': "?",\n    \'bug41828.phpt\': "Missing RecursiveIteratorIterator",\n    \'bug42654.phpt\': "?",\n    \'bug42703.phpt\': "?",\n    \'bug44615.phpt\': "?",\n    \'bug45216.phpt\': "Missing SplFileObject::fgetss",\n    \'bug45614.phpt\': "?",\n    \'bug45622b.phpt\': "?",\n    \'bug45622.phpt\': "?",\n    \'bug45826.phpt\': "?",\n    \'bug46088.phpt\': "?",\n    \'bug46115.phpt\': "?",\n    \'bug46160.phpt\': "?",\n    \'bug48361.phpt\': "?",\n    \'bug49263.phpt\': "?",\n    \'bug49723.phpt\': "?",\n    \'bug50579.phpt\': "?",\n    \'bug51119.phpt\': "?",\n    \'bug51374.phpt\': "Missing SplFileObject::setFileClass",\n    \'bug51532.phpt\': "Missing SplFileObject::fscanf",\n    \'bug52238.phpt\': "?",\n    \'bug52573.phpt\': "?",\n    \'bug52861.phpt\': "?",\n    \'bug53071.phpt\': "?",\n    \'bug53144.phpt\': "?",\n    \'bug53362.phpt\': "?",\n    \'bug53515.phpt\': "?",\n    \'bug54281.phpt\': "?",\n    \'bug54291.phpt\': "?",\n    \'bug54304.phpt\': "?",\n    \'bug54323.phpt\': "?",\n    \'bug54384.phpt\': "Missing IteratorIterator",\n    \'bug54970.phpt\': "?",\n    \'bug54971.phpt\': "?",\n    \'bug60201.phpt\': "?",\n    \'bug61347.phpt\': "?",\n    \'bug61418.phpt\': "Missing RegexIterator",\n    \'bug61453.phpt\': "?",\n    \'bug61527.phpt\': "?",\n    \'bug61697.phpt\': "?",\n    \'bug61828.phpt\': "?",\n    \'bug62073.phpt\': "?",\n    \'bug62262.phpt\': "?",\n    \'bug62433.phpt\': "Missing iterator_to_array",\n    \'bug62616.phpt\': "?",\n    \'bug62672.phpt\': "?",\n    \'bug62904.phpt\': "?",\n    \'bug62978.phpt\': "?",\n    \'bug63680.phpt\': "?",\n    \'bug64106.phpt\': "?",\n    \'bug64264.phpt\': "?",\n    \'bug65328.phpt\': "?",\n    \'CallbackFilterIteratorTest-002.phpt\': "Missing CallbackFilterIterator",\n    \'CallbackFilterIteratorTest.phpt\': "Missing CallbackFilterIterator",\n    \'class_implements_basic2.phpt\': "Missing class_implements",\n    \'class_implements_basic.phpt\': "Missing class_implements",\n    \'class_implements_variation1.phpt\': "Missing class_implements",\n    \'class_implements_variation2.phpt\': "Missing class_implements",\n    \'class_implements_variation.phpt\': "Missing class_implements",\n    \'class_uses_basic2.phpt\': "Missing class_uses",\n    \'class_uses_basic.phpt\': "Missing class_uses",\n    \'class_uses_variation1.phpt\': "Missing class_uses",\n    \'class_uses_variation2.phpt\': "Missing class_uses",\n    \'class_uses_variation.phpt\': "Missing class_uses",\n    \'countable_class_basic1.phpt\': "Missing ReflectionClass::export",\n    \'countable_count_variation1.phpt\': "?",\n    \'DirectoryIterator_empty_constructor.phpt\': "No frames for builtin methods",\n    \'DirectoryIterator_getInode_error.phpt\': "No frames for builtin methods",\n    \'dit_001.phpt\': "Missing RecursiveDirectoryIterator\'s private properties",\n    \'dit_002.phpt\': "Missing ReflectionClass",\n    \'dllist_001.phpt\': "Missing SplDoublyLinkedList",\n    \'dllist_002.phpt\': "Missing SplDoublyLinkedList",\n    \'dllist_003.phpt\': "Missing SplDoublyLinkedList",\n    \'dllist_004.phpt\': "Missing SplStack",\n    \'dllist_005.phpt\': "Missing SplQueue",\n    \'dllist_006.phpt\': "Missing SplDoublyLinkedList",\n    \'dllist_007.phpt\': "Missing SplDoublyLinkedList",\n    \'dllist_008.phpt\': "Missing SplDoublyLinkedList",\n    \'dllist_010.phpt\': "Missing SplDoublyLinkedList",\n    \'dllist_011.phpt\': "Missing SplDoublyLinkedList",\n    \'dllist_012.phpt\': "Missing SplDoublyLinkedList",\n    \'dllist_013.phpt\': "Missing SplDoublyLinkedList",\n    \'dllist_memleak.phpt\': "Missing SplDoublyLinkedList",\n    \'fileobject_getfileinfo_basic.phpt\': "Missing SplFileObject::getFileInfo",\n    \'fileobject_getmaxlinelen_basic.phpt\': "Missing SplFileObject::setMaxLineLen",\n    \'fileobject_setmaxlinelen_basic.phpt\': "Missing SplFileObject::setMaxLineLen",\n    \'fileobject_setmaxlinelen_error001.phpt\': "Missing SplFileObject::setMaxLineLen",\n    \'fileobject_setmaxlinelen_error002.phpt\': "Missing SplFileObject::setMaxLineLen",\n    \'fileobject_setmaxlinelen_error003.phpt\': "Missing SplFileObject::setMaxLineLen",\n    \'fixedarray_001.phpt\': "Missing SplFixedArray",\n    \'fixedarray_002.phpt\': "Missing SplFixedArray",\n    \'fixedarray_003.phpt\': "Missing SplFixedArray",\n    \'fixedarray_004.phpt\': "Missing SplFixedArray",\n    \'fixedarray_005.phpt\': "Missing SplFixedArray",\n    \'fixedarray_006.phpt\': "Missing SplFixedArray",\n    \'fixedarray_007.phpt\': "Missing SplFixedArray",\n    \'fixedarray_008.phpt\': "Missing SplFixedArray",\n    \'fixedarray_009.phpt\': "Missing SplFixedArray",\n    \'fixedarray_010.phpt\': "Missing SplFixedArray",\n    \'fixedarray_011.phpt\': "Missing SplFixedArray",\n    \'fixedarray_012.phpt\': "Missing SplFixedArray",\n    \'fixedarray_013.phpt\': "Missing SplFixedArray",\n    \'fixedarray_014.phpt\': "Missing SplFixedArray",\n    \'fixedarray_015.phpt\': "Missing SplFixedArray",\n    \'fixedarray_016.phpt\': "Missing SplFixedArray",\n    \'fixedarray_017.phpt\': "Missing SplFixedArray",\n    \'fixedarray_018.phpt\': "Missing SplFixedArray",\n    \'fixedarray_019.phpt\': "Missing SplFixedArray",\n    \'fixedarray_020.phpt\': "Missing SplFixedArray",\n    \'fixedarray_021.phpt\': "Missing SplFixedArray",\n    \'heap_001.phpt\': "Missing SplMaxHeap",\n    \'heap_002.phpt\': "Missing SplMinHeap",\n    \'heap_003.phpt\': "Missing SplHeap",\n    \'heap_004.phpt\': "Missing SplHeap",\n    \'heap_005.phpt\': "Missing SplMinHeap",\n    \'heap_006.phpt\': "Missing SplMaxHeap",\n    \'heap_007.phpt\': "Missing SplMaxHeap",\n    \'heap_008.phpt\': "Missing SplMaxHeap",\n    \'heap_009.phpt\': "Missing SplMinHeap",\n    \'heap_010.phpt\': "Missing SplMaxHeap",\n    \'heap_011.phpt\': "Missing SplMinHeap",\n    \'heap_012.phpt\': "Missing SplMaxHeap",\n    \'heap_corruption.phpt\': "Missing SplHeap",\n    \'heap_current_variation_001.phpt\': "Missing SplHeap",\n    \'heap_isempty_variation_001.phpt\': "Missing SplHeap",\n    \'heap_it_current_empty.phpt\': "Missing SplMinHeap",\n    \'heap_top_variation_001.phpt\': "Missing SplMinHeap",\n    \'heap_top_variation_002.phpt\': "Missing SplMinHeap",\n    \'heap_top_variation_003.phpt\': "Missing SplMinHeap",\n    \'iterator_001.phpt\': "Missing LimitIterator",\n    \'iterator_003.phpt\': "Missing CachingIterator",\n    \'iterator_004.phpt\': "Missing LimitIterator",\n    \'iterator_006.phpt\': "Missing SimpleXML",\n    \'iterator_007.phpt\': "Missing NoRewindIterator",\n    \'iterator_008.phpt\': "Missing InfiniteIterator",\n    \'iterator_009.phpt\': "Missing EmptyIterator",\n    \'iterator_010.phpt\': "Missing LimitIterator",\n    \'iterator_011.phpt\': "Missing LimitIterator",\n    \'iterator_012.phpt\': "Missing NoRewindIterator",\n    \'iterator_013.phpt\': "Missing AppendIterator",\n    \'iterator_014.phpt\': "Missing RecursiveArrayIterator",\n    \'iterator_015.phpt\': "missing RecursiveArrayIterator",\n    \'iterator_016.phpt\': "missing RecursiveArrayIterator",\n    \'iterator_017.phpt\': "Missing LimitIterator",\n    \'iterator_018.phpt\': "Missing LimitIterator",\n    \'iterator_019.phpt\': "Missing NoRewindIterator",\n    \'iterator_020.phpt\': "Missing AppendIterator",\n    \'iterator_021.phpt\': "Missing RecursiveArrayIterator",\n    \'iterator_022.phpt\': "Missing RecursiveArrayIterator",\n    \'iterator_023.phpt\': "Missing RecursiveArrayIterator",\n    \'iterator_024.phpt\': "Missing RecursiveArrayIterator",\n    \'iterator_025.phpt\': "Missing RecursiveArrayIterator",\n    \'iterator_026.phpt\': "Missing RecursiveArrayIterator",\n    \'iterator_027.phpt\': "Missing RecursiveArrayIterator",\n    \'iterator_028.phpt\': "Missing RecursiveArrayIterator",\n    \'iterator_029.phpt\': "Missing RegexIterator",\n    \'iterator_030.phpt\': "Missing EmptyIterator",\n    \'iterator_032.phpt\': "Missing Iterator",\n    \'iterator_033.phpt\': "Missing ParentIterator",\n    \'iterator_034.phpt\': "missing RecursiveArrayIterator",\n    \'iterator_035.phpt\': "?",\n    \'iterator_036.phpt\': "?",\n    \'iterator_037.phpt\': "?",\n    \'iterator_038.phpt\': "?",\n    \'iterator_039.phpt\': "?",\n    \'iterator_040.phpt\': "Missing RecursiveFilterIterator",\n    \'iterator_041a.phpt\': "?",\n    \'iterator_041b.phpt\': "?",\n    \'iterator_041.phpt\': "?",\n    \'iterator_042.phpt\': "?",\n    \'iterator_043.phpt\': "?",\n    \'iterator_044.phpt\': "?",\n    \'iterator_045.phpt\': "?",\n    \'iterator_046.phpt\': "?",\n    \'iterator_047.phpt\': "missing RecursiveArrayIterator",\n    \'iterator_048.phpt\': "missing RecursiveRegexIterator",\n    \'iterator_049b.phpt\': "?",\n    \'iterator_049.phpt\': "?",\n    \'iterator_050.phpt\': "?",\n    \'iterator_051.phpt\': "?",\n    \'iterator_052.phpt\': "?",\n    \'iterator_053.phpt\': "?",\n    \'iterator_054.phpt\': "?",\n    \'iterator_055.phpt\': "?",\n    \'iterator_056.phpt\': "?",\n    \'iterator_059.phpt\': "?",\n    \'iterator_060.phpt\': "?",\n    \'iterator_061.phpt\': "?",\n    \'iterator_062.phpt\': "should throw exception",\n    \'iterator_063.phpt\': "?",\n    \'iterator_064.phpt\': "?",\n    \'iterator_065.phpt\': "?",\n    \'iterator_066.phpt\': "?",\n    \'iterator_068.phpt\': "?",\n    \'iterator_count.phpt\': "?",\n    \'iterator_to_array_nonscalar_keys.phpt\': "?",\n    \'iterator_to_array.phpt\': "?",\n    \'limititerator_seek.phpt\': "?",\n    \'multiple_iterator_001.phpt\': "?",\n    \'observer_001.phpt\': "?",\n    \'observer_002.phpt\': "?",\n    \'observer_003.phpt\': "?",\n    \'observer_004.phpt\': "?",\n    \'observer_005.phpt\': "?",\n    \'observer_006.phpt\': "?",\n    \'observer_007.phpt\': "?",\n    \'observer_008.phpt\': "?",\n    \'observer_009.phpt\': "?",\n    \'pqueue_001.phpt\': "?",\n    \'pqueue_002.phpt\': "?",\n    \'pqueue_003.phpt\': "?",\n    \'pqueue_004.phpt\': "?",\n    \'pqueue_compare_basic.phpt\': "?",\n    \'pqueue_compare_error.phpt\': "?",\n    \'pqueue_current_error.phpt\': "?",\n    \'RecursiveCallbackFilterIteratorTest.phpt\': "?",\n    \'RecursiveDirectoryIterator_getSubPath_basic.phpt\': "?",\n    \'RecursiveDirectoryIterator_getSubPathname_basic.phpt\': "?",\n    \'recursiveIteratorIterator_beginchildren_error.phpt\': "missing RecursiveArrayIterator",\n    \'recursiveiteratoriterator_beginiteration_basic.phpt\': "missing RecursiveArrayIterator",\n    \'recursiveIteratorIterator_callHasChildren_error.phpt\': "missing RecursiveArrayIterator",\n    \'recursiveIteratorIterator_endchildren_error.phpt\': "missing RecursiveArrayIterator",\n    \'recursiveiteratoriterator_enditeration_basic.phpt\': "missing RecursiveArrayIterator",\n    \'recursiveiteratoriterator_getsubiterator_basic.phpt\': "missing RecursiveArrayIterator",\n    \'recursiveiteratoriterator_getsubiterator_error.phpt\': "missing RecursiveArrayIterator",\n    \'recursiveiteratoriterator_getsubiterator_variation_002.phpt\': "missing RecursiveArrayIterator",\n    \'recursiveiteratoriterator_getsubiterator_variation_003.phpt\': "missing RecursiveArrayIterator",\n    \'recursiveiteratoriterator_getsubiterator_variation.phpt\': "missing RecursiveArrayIterator",\n    \'recursiveiteratoriterator_nextelement_basic.phpt\': "missing RecursiveArrayIterator",\n    \'recursiveIteratorIterator_nextelement_error.phpt\': "missing RecursiveArrayIterator",\n    \'recursive_tree_iterator_001.phpt\': "?",\n    \'recursive_tree_iterator_002.phpt\': "?",\n    \'recursive_tree_iterator_003.phpt\': "?",\n    \'recursive_tree_iterator_004.phpt\': "?",\n    \'recursive_tree_iterator_005.phpt\': "?",\n    \'recursive_tree_iterator_006.phpt\': "?",\n    \'recursive_tree_iterator_007.phpt\': "?",\n    \'recursive_tree_iterator_008.phpt\': "?",\n    \'recursive_tree_iterator_setpostfix.phpt\': "?",\n    \'recursive_tree_iterator_setprefixpart.phpt\': "?",\n    \'regexIterator_flags_basic.phpt\': "?",\n    \'regexiterator_getpregflags.phpt\': "?",\n    \'regexiterator_getregex.phpt\': "?",\n    \'regexIterator_mode_basic.phpt\': "?",\n    \'regexiterator_setflags_exception.phpt\': "?",\n    \'regexIterator_setMode_error.phpt\': "?",\n    \'regexiterator_setpregflags_exception.phpt\': "?",\n    \'regexiterator_setpregflags.phpt\': "?",\n    \'spl_001.phpt\': "?",\n    \'spl_003.phpt\': "?",\n    \'spl_004.phpt\': "missing RecursiveArrayIterator",\n    \'spl_005.phpt\': "?",\n    \'spl_006.phpt\': "?",\n    \'spl_007.phpt\': "?",\n    \'SplArray_fromArray.phpt\': "?",\n    \'spl_autoload_001.phpt\': "?",\n    \'spl_autoload_002.phpt\': "?",\n    \'spl_autoload_003.phpt\': "?",\n    \'spl_autoload_004.phpt\': "?",\n    \'spl_autoload_005.phpt\': "?",\n    \'spl_autoload_006.phpt\': "?",\n    \'spl_autoload_007.phpt\': "?",\n    \'spl_autoload_008.phpt\': "?",\n    \'spl_autoload_011.phpt\': "?",\n    \'spl_autoload_012.phpt\': "?",\n    \'spl_autoload_013.phpt\': "?",\n    \'spl_caching_iterator_constructor_flags.phpt\': "?",\n    \'spl_cachingiterator_setFlags_basic.phpt\': "?",\n    \'spl_cachingiterator___toString_basic.phpt\': "?",\n    \'spl_classes.phpt\': "?",\n    \'SplDoublyLinkedList_add_invalid_offset.phpt\': "?",\n    \'SplDoublyLinkedList_add_missing_parameter1.phpt\': "?",\n    \'SplDoublyLinkedList_add_missing_parameter2.phpt\': "?",\n    \'SplDoublyLinkedList_add_null_offset.phpt\': "?",\n    \'SplDoublyLinkedList_bottom_pass_array.phpt\': "?",\n    \'SplDoublyLinkedList_bottom_pass_float.phpt\': "?",\n    \'SplDoublyLinkedList_bottom_pass_integer.phpt\': "?",\n    \'SplDoublyLinkedList_bottom_pass_null.phpt\': "?",\n    \'SplDoublyLinkedList_count_param_SplDoublyLinkedList.phpt\': "?",\n    \'SplDoublyLinkedList_count.phpt\': "?",\n    \'SplDoublyLinkedList_current_empty.phpt\': "?",\n    \'SplDoublyLinkedList_current.phpt\': "?",\n    \'SplDoublyLinkedList_debug-info.phpt\': "?",\n    \'SplDoublyLinkedList_getIteratorMode_error.phpt\': "?",\n    \'SplDoublyLinkedList_getIteratorMode.phpt\': "?",\n    \'SplDoublyLinkedList_isEmpty_empty.phpt\': "?",\n    \'SplDoublyLinkedList_isEmpty_empty-with-parameter.phpt\': "?",\n    \'SplDoublyLinkedList_isEmpty_not-empty.phpt\': "?",\n    \'SplDoublyLinkedList_isEmpty_not-empty-with-parameter.phpt\': "?",\n    \'SplDoublyLinkedList_lifoMode.phpt\': "?",\n    \'SplDoublyLinkedList_offsetExists_invalid_parameter.phpt\': "?",\n    \'SplDoublyLinkedList_offsetExists_success.phpt\': "?",\n    \'SplDoublyLinkedList_offsetGet_empty.phpt\': "?",\n    \'SplDoublyLinkedList_offsetGet_missing_param.phpt\': "?",\n    \'SplDoublyLinkedList_offsetGet_param_array.phpt\': "?",\n    \'SplDoublyLinkedList_offsetGet_param_string.phpt\': "?",\n    \'SplDoublyLinkedList_offsetSet_invalid_parameter.phpt\': "?",\n    \'SplDoublyLinkedList_offsetSet_one_invalid_parameter.phpt\': "?",\n    \'SplDoublylinkedlist_offsetunset_first002.phpt\': "?",\n    \'SplDoublylinkedlist_offsetunset_first.phpt\': "?",\n    \'SplDoublyLinkedList_offsetUnset_greater_than_elements.phpt\': "?",\n    \'SplDoublylinkedlist_offsetunset_last.phpt\': "?",\n    \'SplDoublyLinkedList_offsetUnset_negative-parameter.phpt\': "?",\n    \'SplDoublyLinkedList_offsetUnset_parameter-larger-num-elements.phpt\': "?",\n    \'SplDoublyLinkedList_pop_noParams.phpt\': "?",\n    \'SplDoublyLinkedList_pop_params.phpt\': "?",\n    \'SplDoublyLinkedList_push_missing_parameter.phpt\': "?",\n    \'SplDoublyLinkedList_serialization.phpt\': "?",\n    \'SplDoublyLinkedList_setIteratorMode_param_SplDoublyLinkedList.phpt\': "?",\n    \'splDoublyLinkedList_shift_noParams.phpt\': "?",\n    \'SplDoublyLinkedList_top_pass_array.phpt\': "?",\n    \'SplDoublyLinkedList_top_pass_float.phpt\': "?",\n    \'SplDoublyLinkedList_top_pass_integer.phpt\': "?",\n    \'SplDoublyLinkedList_top_pass_null.phpt\': "?",\n    \'SplDoublyLinkedList_unshift_missing_parameter.phpt\': "?",\n    \'SplFileInfo_getGroup_error.phpt\': "No frames for builtin methods",\n    \'SplFileInfo_getInode_error.phpt\': "No frames for builtin methods",\n    \'SplFileInfo_getOwner_error.phpt\': "No frames for builtin methods",\n    \'SplFileInfo_getPerms_error.phpt\': "No frames for builtin methods",\n    \'SplFileObject_fflush_basic_001.phpt\': "Missing stream_wrapper_register",\n    \'SplFileObject_fgetcsv_basic.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fgetcsv_delimiter_basic.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fgetcsv_delimiter_error.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fgetcsv_enclosure_basic.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fgetcsv_enclosure_error.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fgetcsv_escape_basic.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fgetcsv_escape_default.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fgetcsv_escape_error.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fpassthru_basic.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv_002.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv_error.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv_variation10.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv_variation11.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv_variation12.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv_variation13.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv_variation14.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv_variation1.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv_variation5.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv_variation6.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv_variation7.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fputcsv_variation8.phpt\': "Missing SplFileObject",\n    \'SplFileObject_fscanf_basic.phpt\': "Missing SplFileObject",\n    \'SplFileObject_ftruncate_error_001.phpt\': "Missing stream_wrapper_register",\n    \'SplFileObject_getCsvControl_basic_001.phpt\': "Missing SplFileObject",\n    \'SplFileObject_seek_error_001.phpt\': "problem with rising errors",\n    \'SplFileObject_setCsvControl_basic.phpt\': "Missing SplFileObject",\n    \'SplFileObject_setCsvControl_error001.phpt\': "Missing SplFileObject",\n    \'SplFileObject_setCsvControl_error002.phpt\': "Missing SplFileObject",\n    \'SplFileObject_setCsvControl_error003.phpt\': "Missing SplFileObject",\n    \'SplFileObject_setCsvControl_variation001.phpt\': "Missing SplFileObject",\n    \'SplFixedArray__construct_param_array.phpt\': "?",\n    \'SplFixedArray__construct_param_float.phpt\': "?",\n    \'SplFixedArray__construct_param_null.phpt\': "?",\n    \'SplFixedArray_construct_param_SplFixedArray.phpt\': "?",\n    \'SplFixedArray__construct_param_string.phpt\': "?",\n    \'SplFixedArray_count_checkParams.phpt\': "?",\n    \'SplFixedArray_count_param_int.phpt\': "?",\n    \'SplFixedArray_current_param.phpt\': "?",\n    \'SplFixedArray_fromarray_indexes.phpt\': "?",\n    \'SplFixedArray_fromArray_invalid_parameter_001.phpt\': "?",\n    \'SplFixedArray_fromArray_invalid_parameter_002.phpt\': "?",\n    \'SplFixedArray_fromarray_non_indexes.phpt\': "?",\n    \'SplFixedArray_fromarray_param_boolean.phpt\': "?",\n    \'SplFixedArray_fromarray_param_multiarray.phpt\': "?",\n    \'SplFixedArray_getSize_pass_param.phpt\': "?",\n    \'SplFixedArray_key_param.phpt\': "?",\n    \'SplFixedArray_key_setsize.phpt\': "?",\n    \'SplFixedArray_next_param.phpt\': "?",\n    \'SplFixedArray_offsetExists_invalid_parameter.phpt\': "?",\n    \'splfixedarray_offsetExists_larger.phpt\': "?",\n    \'SplFixedArray_offsetExists_less_than_zero.phpt\': "?",\n    \'SplFixedArray_offsetGet_invalid_parameter.phpt\': "?",\n    \'SplFixedArray_offsetSet_invalid_parameter.phpt\': "?",\n    \'SplFixedArray_offsetSet_one_invalid_parameter.phpt\': "?",\n    \'SplFixedArray_offsetUnset_invalid_parameter.phpt\': "?",\n    \'SplFixedArray_offsetUnset_string.phpt\': "?",\n    \'SplFixedArray_rewind_param.phpt\': "?",\n    \'SplFixedArray_serialize.phpt\': "?",\n    \'SplFixedArray_setsize_001.phpt\': "?",\n    \'SplFixedArray_setSize_filled_to_smaller.phpt\': "?",\n    \'SplFixedArray_setsize_grow.phpt\': "?",\n    \'SplFixedArray_setSize_param_array.phpt\': "?",\n    \'SplFixedArray_setSize_param_float.phpt\': "?",\n    \'SplFixedArray_setSize_param_null.phpt\': "?",\n    \'SplFixedArray_setSize_reduce.phpt\': "?",\n    \'SplFixedArray_setsize_shrink.phpt\': "?",\n    \'SplFixedArray_toArray_with-params.phpt\': "?",\n    \'spl_heap_count_basic.phpt\': "?",\n    \'spl_heap_count_error.phpt\': "?",\n    \'SplHeap_count_invalid_parameter.phpt\': "?",\n    \'SplHeap_extract_invalid_parameter.phpt\': "?",\n    \'spl_heap_extract_parameter_error.phpt\': "?",\n    \'spl_heap_insert_basic.phpt\': "?",\n    \'SplHeap_insert_invalid_parameter.phpt\': "?",\n    \'spl_heap_is_empty_basic.phpt\': "?",\n    \'SplHeap_isEmpty_invalid_parameter.phpt\': "?",\n    \'spl_heap_isempty.phpt\': "?",\n    \'SplHeap_isEmpty.phpt\': "?",\n    \'spl_heap_iteration_error.phpt\': "?",\n    \'spl_heap_recoverfromcorruption_arguments.phpt\': "?",\n    \'spl_iterator_apply_error_001.phpt\': "?",\n    \'spl_iterator_apply_error.phpt\': "?",\n    \'spl_iterator_caching_count_basic.phpt\': "?",\n    \'spl_iterator_caching_count_error.phpt\': "?",\n    \'spl_iterator_caching_getcache_error.phpt\': "?",\n    \'spl_iterator_iterator_constructor.phpt\': "?",\n    \'spl_iterator_to_array_basic.phpt\': "?",\n    \'spl_iterator_to_array_error.phpt\': "?",\n    \'spl_limit_iterator_check_limits.phpt\': "?",\n    \'spl_maxheap_compare_basic.phpt\': "?",\n    \'spl_minheap_compare_error.phpt\': "?",\n    \'SplObjectStorage_addAll_invalid_parameter.phpt\': "?",\n    \'SplObjectStorage_attach_invalid_parameter.phpt\': "?",\n    \'SplObjectStorage_contains_invalid_parameter.phpt\': "?",\n    \'SplObjectStorage_current_empty_storage.phpt\': "?",\n    \'SplObjectStorage_detach_invalid_parameter.phpt\': "?",\n    \'SplObjectStorage_getHash.phpt\': "?",\n    \'SplObjectStorage_getInfo_empty_storage.phpt\': "?",\n    \'SplObjectStorage_offsetGet_invalid_parameter.phpt\': "?",\n    \'SplObjectStorage_offsetGet_missing_object.phpt\': "?",\n    \'SplObjectStorage_offsetGet.phpt\': "?",\n    \'SplObjectStorage_removeAllExcept_basic.phpt\': "?",\n    \'SplObjectStorage_removeAllExcept_invalid_parameter.phpt\': "?",\n    \'SplObjectStorage_removeAll_invalid_parameter.phpt\': "?",\n    \'SplObjectStorage_setInfo_empty_storage.phpt\': "?",\n    \'SplObjectStorage_setInfo_invalid_parameter.phpt\': "?",\n    \'SplObjectStorage_unserialize_bad.phpt\': "?",\n    \'SplObjectStorage_unserialize_invalid_parameter1.phpt\': "?",\n    \'SplObjectStorage_unserialize_invalid_parameter2.phpt\': "?",\n    \'SplObjectStorage_unserialize_invalid_parameter3.phpt\': "?",\n    \'SplObjectStorage_unserialize_nested.phpt\': "?",\n    \'SplObjectStorage_var_dump.phpt\': "?",\n    \'spl_pq_top_basic.phpt\': "?",\n    \'spl_pq_top_error_args.phpt\': "?",\n    \'spl_pq_top_error_corrupt.phpt\': "?",\n    \'spl_pq_top_error_empty.phpt\': "?",\n    \'spl_priorityqeue_insert_two_params_error.phpt\': "?",\n    \'SplPriorityQueue_extract_invalid_parameter.phpt\': "?",\n    \'splpriorityqueue_extract.phpt\': "?",\n    \'SplPriorityQueue_insert_invalid_parameter.phpt\': "?",\n    \'splpriorityqueue_setextractflags.phpt\': "?",\n    \'SplQueue_setIteratorMode_param_lifo.phpt\': "?",\n    \'SplQueue_setIteratorMode.phpt\': "?",\n    \'spl_recursiveIteratorIterator_setMaxDepth_parameter_count.phpt\': "missing RecursiveArrayIterator",\n    \'SplStack_setIteratorMode.phpt\': "?",\n    \'SplTempFileObject_constructor_basic.phpt\': "Missing SplTempFileObject, SplFileObject",\n    \'SplTempFileObject_constructor_error.phpt\': "Missing SplTempFileObject",\n    \'SplTempFileObject_constructor_maxmemory_basic.phpt\': "Missing SplTempFileObject",\n    \'SplTempFileObject_constructor_memory_lt1_variation.phpt\': "Missing SplTempFileObject",\n}\n\n\nmarkers[\'Zend/tests/constants\'] = {}\nmarkers[\'Zend/multibyte\'] = SkipAll()\nmarkers[\'Zend/traits\'] = SkipAll()\nmarkers[\'Zend/traits/bugs\'] = SkipAll()\n\nmarkers[ctype_test_dir] = {}\nmarkers[hash_test_dir] = {\n    \'ripemd128.phpt\':  slow,\n    \'ripemd160.phpt\':  slow,\n    \'ripemd256.phpt\':  slow,\n    \'ripemd320.phpt\':  slow,\n    \'sha1.phpt\':  slow,\n    \'md5.phpt\':  slow,\n    \'sha224.phpt\':  slow,\n    \'sha256.phpt\':  slow,\n    \'sha384.phpt\':  slow,\n    \'sha512.phpt\':  slow,\n    \'snefru.phpt\':  slow,\n    \'tiger.phpt\':  slow,\n    \'whirlpool.phpt\':  slow,\n}\n\nmarkers[mcrypt_test_dir] = {\n    \'mcrypt_decrypt_variation4.phpt\': \'missing obj to str cast one warn level 8\',\n    \'mcrypt_ecb_variation4.phpt\': \'missing obj to str cast one warn level 8\',\n    \'mcrypt_encrypt_variation4.phpt\': \'missing obj to str cast one warn level 8\',\n    \'mcrypt_filters.phpt\': \'missing stream filters\',\n    \'mcrypt_get_cipher_name.phpt\': \'missing\',\n}\n\nmarkers[\'ext/bz2\'] = {\n    \'001.phpt\': \'?\',\n    \'002.phpt\': \'?\',\n    \'003.phpt\': \'?\',\n    \'004.phpt\': \'?\',\n    \'005.phpt\': \'?\',\n    \'bug51997.phpt\': \'?\',\n    \'bz2_filter_compress.phpt\': \'?\',\n    \'bz2_filter_decompress.phpt\': \'?\',\n    \'with_files.phpt\': \'?\',}\n\nmarkers[\'ext/zlib\'] = {\n    \'bug_34821.phpt\': slow,\n    \'gzinflate-bug42663.phpt\': slow,\n    \'gzcompress_basic1.phpt\': slow,\n    \'gzdeflate_basic1.phpt\': slow,\n    \'gzencode_basic1.phpt\': slow,\n\n    \'004.phpt\': \'?\',\n    \'005.phpt\': \'?\',\n    \'006.phpt\': \'?\',\n    \'007.phpt\': \'?\',\n    \'bug60761.phpt\': \'SKIP: Unknown phpt section header: CGI\',\n    \'bug61139.phpt\': \'?\',\n    \'bug61820.phpt\': \'?\',\n    \'bug65391.phpt\': \'?\',\n    \'bug67724.phpt\': \'?\',\n    \'bug_40189.phpt\': \'?\',\n    \'bug_52944.phpt\': \'?\',\n    \'compress_zlib_wrapper.phpt\': \'?\',\n    \'gzclose_basic.phpt\': \'?\',\n    \'gzclose_error.phpt\': \'?\',\n    \'gzcompress_error1.phpt\': \'?\',\n    \'gzdeflate_error1.phpt\': \'?\',\n    \'gzencode_error1.phpt\': \'?\',\n    \'gzeof_basic.phpt\': \'?\',\n    \'gzeof_error.phpt\': \'?\',\n    \'gzeof_variation1.phpt\': \'?\',\n    \'gzfile_basic.phpt\': \'?\',\n    \'gzfile_basic2.phpt\': \'?\',\n    \'gzfile_error.phpt\': \'?\',\n    \'gzfile_variation1.phpt\': \'?\',\n    \'gzfile_variation10.phpt\': \'?\',\n    \'gzfile_variation11.phpt\': \'?\',\n    \'gzfile_variation12.phpt\': \'?\',\n    \'gzfile_variation13.phpt\': \'?\',\n    \'gzfile_variation14.phpt\': \'?\',\n    \'gzfile_variation15.phpt\': \'?\',\n    \'gzfile_variation2.phpt\': \'?\',\n    \'gzfile_variation3.phpt\': \'?\',\n    \'gzfile_variation4.phpt\': \'?\',\n    \'gzfile_variation5.phpt\': \'?\',\n    \'gzfile_variation6.phpt\': \'?\',\n    \'gzfile_variation7.phpt\': \'?\',\n    \'gzfile_variation8.phpt\': \'?\',\n    \'gzfile_variation9.phpt\': \'?\',\n    \'gzfilegzreadfile.phpt\': \'?\',\n    \'gzgetc_basic.phpt\': \'?\',\n    \'gzgetc_error.phpt\': \'?\',\n    \'gzgets_basic.phpt\': \'?\',\n    \'gzgets_error.phpt\': \'?\',\n    \'gzinflate_error1.phpt\': \'?\',\n    \'gzinflate_length.phpt\': \'?\',\n    \'gzopen_basic.phpt\': \'?\',\n    \'gzopen_basic2.phpt\': \'?\',\n    \'gzopen_error.phpt\': \'?\',\n    \'gzopen_variation1.phpt\': \'?\',\n    \'gzopen_variation2.phpt\': \'?\',\n    \'gzopen_variation3.phpt\': \'?\',\n    \'gzopen_variation4.phpt\': \'?\',\n    \'gzopen_variation5.phpt\': \'?\',\n    \'gzopen_variation6.phpt\': \'?\',\n    \'gzopen_variation7.phpt\': \'?\',\n    \'gzopen_variation8.phpt\': \'?\',\n    \'gzopen_variation9.phpt\': \'?\',\n    \'gzpassthru_basic.phpt\': \'?\',\n    \'gzpassthru_error.phpt\': \'?\',\n    \'gzputs_basic.phpt\': \'?\',\n    \'gzread_basic.phpt\': \'?\',\n    \'gzread_error.phpt\': \'?\',\n    \'gzread_error2.phpt\': \'?\',\n    \'gzread_variation1.phpt\': \'?\',\n    \'gzreadgzwrite.phpt\': \'?\',\n    \'gzreadgzwriteplain.phpt\': \'?\',\n    \'gzrewind_basic.phpt\': \'?\',\n    \'gzrewind_basic2.phpt\': \'?\',\n    \'gzrewind_error.phpt\': \'?\',\n    \'gzrewind_variation1.phpt\': \'?\',\n    \'gzseek_basic.phpt\': \'?\',\n    \'gzseek_basic2.phpt\': \'?\',\n    \'gzseek_error.phpt\': \'?\',\n    \'gzseek_variation1.phpt\': \'?\',\n    \'gzseek_variation2.phpt\': \'?\',\n    \'gzseek_variation3.phpt\': \'?\',\n    \'gzseek_variation4.phpt\': \'?\',\n    \'gzseek_variation5.phpt\': \'?\',\n    \'gzseek_variation6.phpt\': \'?\',\n    \'gzseek_variation7.phpt\': \'?\',\n    \'gztell_basic.phpt\': \'?\',\n    \'gztell_basic2.phpt\': \'?\',\n    \'gztell_error.phpt\': \'?\',\n    \'gzuncompress_error1.phpt\': \'?\',\n    \'gzwrite_basic.phpt\': \'?\',\n    \'gzwrite_error.phpt\': \'?\',\n    \'gzwrite_error2.phpt\': \'?\',\n    \'gzwrite_variation1.phpt\': \'?\',\n    \'readgzfile_basic.phpt\': \'?\',\n    \'readgzfile_basic2.phpt\': \'?\',\n    \'readgzfile_error.phpt\': \'?\',\n    \'readgzfile_variation1.phpt\': \'?\',\n    \'readgzfile_variation10.phpt\': \'?\',\n    \'readgzfile_variation11.phpt\': \'?\',\n    \'readgzfile_variation12.phpt\': \'?\',\n    \'readgzfile_variation13.phpt\': \'?\',\n    \'readgzfile_variation14.phpt\': \'?\',\n    \'readgzfile_variation15.phpt\': \'?\',\n    \'readgzfile_variation2.phpt\': \'?\',\n    \'readgzfile_variation3.phpt\': \'?\',\n    \'readgzfile_variation4.phpt\': \'?\',\n    \'readgzfile_variation5.phpt\': \'?\',\n    \'readgzfile_variation6.phpt\': \'?\',\n    \'readgzfile_variation7.phpt\': \'?\',\n    \'readgzfile_variation8.phpt\': \'?\',\n    \'readgzfile_variation9.phpt\': \'?\',\n    \'zlib_filter_deflate.phpt\': \'?\',\n    \'zlib_filter_deflate2.phpt\': \'?\',\n    \'zlib_filter_inflate.phpt\': \'?\',\n    \'zlib_filter_inflate2.phpt\': \'?\',\n    \'zlib_scheme_copy_basic.phpt\': \'?\',\n    \'zlib_scheme_copy_variation1.phpt\': \'?\',\n    \'zlib_scheme_copy_variation2.phpt\': \'?\',\n    \'zlib_scheme_dir_basic.phpt\': \'?\',\n    \'zlib_scheme_file_basic.phpt\': \'?\',\n    \'zlib_scheme_file_get_contents_basic.phpt\': \'?\',\n    \'zlib_scheme_file_put_contents_basic.phpt\': \'?\',\n    \'zlib_scheme_file_read_file_basic.phpt\': \'?\',\n    \'zlib_scheme_fopen_basic.phpt\': \'?\',\n    \'zlib_scheme_fopen_variation1.phpt\': \'?\',\n    \'zlib_scheme_rename_basic.phpt\': \'?\',\n    \'zlib_scheme_unlink_basic.phpt\': \'?\',\n    \'zlib_wrapper_fflush_basic.phpt\': \'?\',\n    \'zlib_wrapper_flock_basic.phpt\': \'?\',\n    \'zlib_wrapper_fstat_basic.phpt\': \'?\',\n    \'zlib_wrapper_ftruncate_basic.phpt\': \'?\',\n    \'zlib_wrapper_meta_data_basic.phpt\': \'?\',\n}\n\nprerequisites = {mysql_test_dir: "mysql",\n                 mcrypt_test_dir: "mcrypt"}\n\n\nclass PHPTest(Item):\n    def runtest(self):\n        basename = py.path.local(self.name).relto(TEST_DIR)\n        dirname = basename[:basename.rfind(\'/\')]\n        fname = py.path.local(self.name).basename\n        prereq = prerequisites.get(dirname)\n        if prereq and not is_optional_extension_enabled(prereq):\n            py.test.skip("Extension %s required" % prereq)\n        phpt_test(dirname, fname)\n\n    def reportinfo(self):\n        return self.name, None, py.path.local(self.name).basename\n\n\nclass PHPModule(Collector):\n    def __init__(self, name, parent):\n        Collector.__init__(self, name, parent)\n        self._nodeid = py.path.local(name).relto(TEST_DIR)\n\n    def collect(self):\n        return [PHPTest(self.name, self)]\n\n\ndef pytest_collect_file(path, parent):\n    if str(path).endswith(\'.phpt\'):\n        return PHPModule(str(path), parent)\n\n\ndef strip_ampersand(s):\n    # Exactly matching PHP\'s var_dump() output requires fully exact copying\n    # of its ref counting semantics, so we just strip leading \'&\'s.\n    if s.startswith(\'&\'):\n        return s[1:]\n    else:\n        return s\n\nFATAL_UNDEFINED = \'Fatal error: Call to undefined function \'\nINTERFACES = [\'ArrayAccess\', \'Countable\', \'Iterator\', \'Traversable\',\n    \'Serializable\']\nMISSING_INTERFACE = dict([(name,\n                           "Fatal error: Interface \'%s\' not found" % name)\n                          for name in INTERFACES])\n\n\ndef phpt_test(dir, file_name):\n    marker = markers[dir].get(file_name, None)\n    if marker is not None:\n        assert isinstance(marker, str)\n        if marker.startswith(\'SKIP:\'):\n            py.test.skip(marker)\n    sign_only = (marker == check_sign_only)\n    if sign_only:\n        marker = None\n\n    file_name = os.path.join(TEST_DIR, dir, file_name)\n    (tname, skipif_src, src, exp, ini,\n     clean, request) = parse_phpt(file_name)\n    os.chdir(os.path.dirname(file_name))\n\n    fname = file_name.replace(\'.phpt\', \'.php\')\n    with open(fname, \'w\') as f:\n        f.write(src)\n    runner = PhptRunner(ini, fname, request)\n    locale.setlocale(locale.LC_ALL, \'C\')\n    try:\n        skipif = runner.run(skipif_src)\n        if skipif and skipif[-1].startswith(\'skip\'):\n            py.test.skip(skipif[-1])\n        try:\n            raw_output = runner.run(src)\n        except:\n            if marker is None:\n                raise      # the test is supposed not to fail, but did\n            else:\n                py.test.skip(marker)     # failed as expected\n    finally:\n        os.chdir(os.path.dirname(file_name))\n        runner.run(clean)\n        os.remove(fname)\n\n    pt = PrettyTable(["st", "php", "hippy"])\n    pt.align["st"] = "l"\n    pt.align["php"] = "l"\n    pt.align["hippy"] = "l"\n\n    output = []\n    for l in raw_output:\n        if not isinstance(l, str):\n            l = runner.space.str_w(l)\n        for pl in l.split(\'\\n\'):\n            if pl.strip() != "":\n                output.append(pl)\n\n    diff = []\n    for php, hippy in zip(exp, output):\n        hippy = strip_ampersand(hippy.strip())\n        php = strip_ampersand(php.strip())\n        if matches_line(php, hippy, sign_only):\n            st = "ok"\n        else:\n            st = "X"\n            diff.append((php, hippy))\n        pt.add_row([st, php[:COL_WIDTH].decode(\'latin1\'),\n                    hippy[:COL_WIDTH].decode(\'latin1\')])\n\n    if diff:\n        print "\\n\\n"\n        print pt\n        print "\\n\\n"\n    try:\n        for p, h in diff:\n            assert p == h\n        assert len(exp) == len(output)\n    except AssertionError:\n        if marker is None:\n            raise      # the test is supposed not to fail, but did\n        else:\n            py.test.skip(marker)     # failed as expected\n    else:\n        if marker is None or marker.lower().startswith(\'xfail:\'):\n            pass       # everything is passing\n        else:\n            raise Exception("the test \'%s\' was supposed to fail, but didn\'t"\n                            % (file_name,))\n', 'message': 'Merge pull request #32 from sk-/master\n\nFixed error checking on sleep and implemented usleep', 'author_name': 'Rafał Gałczyński', 'lang': 'py'}