Exemplo n.º 1
0
    void moduleInit() override {
#ifdef USE_EDITLINE
      HHVM_RC_STR(READLINE_LIB, "libedit");
#else
      HHVM_RC_STR(READLINE_LIB, "readline");
#endif
      HHVM_FE(readline);
      HHVM_FE(readline_add_history);
      HHVM_FE(readline_clear_history);
      HHVM_FE(readline_completion_function);
      HHVM_FE(readline_info);
      HHVM_FE(readline_read_history);
      HHVM_FE(readline_write_history);
      loadSystemlib();
    }
Exemplo n.º 2
0
void StandardExtension::initMisc() {
    HHVM_FALIAS(HH\\server_warmup_status, server_warmup_status);
    HHVM_FE(connection_aborted);
    HHVM_FE(connection_status);
    HHVM_FE(connection_timeout);
    HHVM_FE(constant);
    HHVM_FE(define);
    HHVM_FE(defined);
    HHVM_FE(ignore_user_abort);
    HHVM_FE(pack);
    HHVM_FE(sleep);
    HHVM_FE(usleep);
    HHVM_FE(time_nanosleep);
    HHVM_FE(time_sleep_until);
    HHVM_FE(uniqid);
    HHVM_FE(unpack);
    HHVM_FE(sys_getloadavg);
    HHVM_FE(token_get_all);
    HHVM_FE(token_name);
    HHVM_FE(hphp_to_string);
    HHVM_FALIAS(__SystemLib\\max2, SystemLib_max2);
    HHVM_FALIAS(__SystemLib\\min2, SystemLib_min2);
    HHVM_RC_INT(PHP_MAXPATHLEN, PATH_MAX);
    Native::registerConstant<KindOfBoolean>(makeStaticString("PHP_DEBUG"),
      #if DEBUG
        true
      #else
        false
      #endif
     );
    bindTokenConstants();
    HHVM_RC_INT(T_PAAMAYIM_NEKUDOTAYIM, get_user_token_id(T_DOUBLE_COLON));

    HHVM_RC_INT(UPLOAD_ERR_OK,         0);
    HHVM_RC_INT(UPLOAD_ERR_INI_SIZE,   1);
    HHVM_RC_INT(UPLOAD_ERR_FORM_SIZE,  2);
    HHVM_RC_INT(UPLOAD_ERR_PARTIAL,    3);
    HHVM_RC_INT(UPLOAD_ERR_NO_FILE,    4);
    HHVM_RC_INT(UPLOAD_ERR_NO_TMP_DIR, 6);
    HHVM_RC_INT(UPLOAD_ERR_CANT_WRITE, 7);
    HHVM_RC_INT(UPLOAD_ERR_EXTENSION,  8);

    HHVM_RC_INT(CREDITS_GROUP,    1 << 0);
    HHVM_RC_INT(CREDITS_GENERAL,  1 << 1);
    HHVM_RC_INT(CREDITS_SAPI,     1 << 2);
    HHVM_RC_INT(CREDITS_MODULES,  1 << 3);
    HHVM_RC_INT(CREDITS_DOCS,     1 << 4);
    HHVM_RC_INT(CREDITS_FULLPAGE, 1 << 5);
    HHVM_RC_INT(CREDITS_QA,       1 << 6);
    HHVM_RC_INT(CREDITS_ALL, 0xFFFFFFFF);

    HHVM_RC_INT(INI_SYSTEM, IniSetting::PHP_INI_SYSTEM);
    HHVM_RC_INT(INI_PERDIR, IniSetting::PHP_INI_PERDIR);
    HHVM_RC_INT(INI_USER,   IniSetting::PHP_INI_USER);
    HHVM_RC_INT(INI_ALL,    IniSetting::PHP_INI_SYSTEM |
                            IniSetting::PHP_INI_PERDIR |
                            IniSetting::PHP_INI_USER);

    HHVM_RC_STR(PHP_BINARY, current_executable_path());
    HHVM_RC_STR(PHP_BINDIR, current_executable_directory());
    HHVM_RC_STR(PHP_OS, HHVM_FN(php_uname)("s").toString().toCppString());
    HHVM_RC_STR(PHP_SAPI, RuntimeOption::ExecutionMode);

    HHVM_RC_INT(PHP_INT_SIZE, sizeof(int64_t));
    HHVM_RC_INT(PHP_INT_MIN, k_PHP_INT_MIN);
    HHVM_RC_INT(PHP_INT_MAX, k_PHP_INT_MAX);

    HHVM_RC_INT_SAME(PHP_MAJOR_VERSION);
    HHVM_RC_INT_SAME(PHP_MINOR_VERSION);
    HHVM_RC_INT_SAME(PHP_RELEASE_VERSION);
    HHVM_RC_STR_SAME(PHP_EXTRA_VERSION);
    HHVM_RC_STR_SAME(PHP_VERSION);
    HHVM_RC_INT_SAME(PHP_VERSION_ID);

    // FIXME: These values are hardcoded from their previous IDL values
    // Grab their correct values from the system as appropriate
    HHVM_RC_STR(PHP_EOL, "\n");
    HHVM_RC_STR(PHP_CONFIG_FILE_PATH, "");
    HHVM_RC_STR(PHP_CONFIG_FILE_SCAN_DIR, "");
    HHVM_RC_STR(PHP_DATADIR, "");
    HHVM_RC_STR(PHP_EXTENSION_DIR, "");
    HHVM_RC_STR(PHP_LIBDIR, "");
    HHVM_RC_STR(PHP_LOCALSTATEDIR, "");
    HHVM_RC_STR(PHP_PREFIX, "");
    HHVM_RC_STR(PHP_SHLIB_SUFFIX, "so");
    HHVM_RC_STR(PHP_SYSCONFDIR, "");
    HHVM_RC_STR(PEAR_EXTENSION_DIR, "");
    HHVM_RC_STR(PEAR_INSTALL_DIR, "");

    loadSystemlib("std_misc");
  }
Exemplo n.º 3
0
void StandardExtension::initMisc() {
    HHVM_FALIAS(HH\\server_warmup_status, server_warmup_status);
    HHVM_FE(connection_aborted);
    HHVM_FE(connection_status);
    HHVM_FE(connection_timeout);
    HHVM_FE(constant);
    HHVM_FE(define);
    HHVM_FE(defined);
    HHVM_FE(ignore_user_abort);
    HHVM_FE(pack);
    HHVM_FE(sleep);
    HHVM_FE(usleep);
    HHVM_FE(time_nanosleep);
    HHVM_FE(time_sleep_until);
    HHVM_FE(uniqid);
    HHVM_FE(unpack);
    HHVM_FE(sys_getloadavg);
    HHVM_FE(token_get_all);
    HHVM_FE(token_name);
    HHVM_FE(hphp_to_string);
    HHVM_FALIAS(__SystemLib\\max2, SystemLib_max2);
    HHVM_FALIAS(__SystemLib\\min2, SystemLib_min2);
    Native::registerConstant<KindOfDouble>(makeStaticString("INF"), k_INF);
    Native::registerConstant<KindOfDouble>(makeStaticString("NAN"), k_NAN);
    Native::registerConstant<KindOfInt64>(
        makeStaticString("PHP_MAXPATHLEN"), MAXPATHLEN);
    Native::registerConstant<KindOfBoolean>(makeStaticString("PHP_DEBUG"),
      #if DEBUG
        true
      #else
        false
      #endif
     );
    bindTokenConstants();
    Native::registerConstant<KindOfInt64>(s_T_PAAMAYIM_NEKUDOTAYIM.get(),
                                          get_user_token_id(T_DOUBLE_COLON));

    HHVM_RC_STR(PHP_BINARY, current_executable_path());
    HHVM_RC_STR(PHP_BINDIR, current_executable_directory());
    HHVM_RC_STR(PHP_OS, HHVM_FN(php_uname)("s").toString().toCppString());
    HHVM_RC_STR(PHP_SAPI, RuntimeOption::ExecutionMode);

    HHVM_RC_INT(PHP_INT_SIZE, sizeof(int64_t));
    HHVM_RC_INT(PHP_INT_MIN, k_PHP_INT_MIN);
    HHVM_RC_INT(PHP_INT_MAX, k_PHP_INT_MAX);

    HHVM_RC_INT_SAME(PHP_MAJOR_VERSION);
    HHVM_RC_INT_SAME(PHP_MINOR_VERSION);
    HHVM_RC_INT_SAME(PHP_RELEASE_VERSION);
    HHVM_RC_STR_SAME(PHP_EXTRA_VERSION);
    HHVM_RC_STR_SAME(PHP_VERSION);
    HHVM_RC_INT_SAME(PHP_VERSION_ID);

    // FIXME: These values are hardcoded from their previous IDL values
    // Grab their correct values from the system as appropriate
    HHVM_RC_STR(PHP_EOL, "\n");
    HHVM_RC_STR(PHP_CONFIG_FILE_PATH, "");
    HHVM_RC_STR(PHP_CONFIG_FILE_SCAN_DIR, "");
    HHVM_RC_STR(PHP_DATADIR, "");
    HHVM_RC_STR(PHP_EXTENSION_DIR, "");
    HHVM_RC_STR(PHP_LIBDIR, "");
    HHVM_RC_STR(PHP_LOCALSTATEDIR, "");
    HHVM_RC_STR(PHP_PREFIX, "");
    HHVM_RC_STR(PHP_SHLIB_SUFFIX, "so");
    HHVM_RC_STR(PHP_SYSCONFDIR, "");
    HHVM_RC_STR(PEAR_EXTENSION_DIR, "");
    HHVM_RC_STR(PEAR_INSTALL_DIR, "");

    loadSystemlib("std_misc");
  }
Exemplo n.º 4
0
    void moduleInit() override {
      HHVM_RC_INT_SAME(LIBXML_VERSION);
      HHVM_RC_STR_SAME(LIBXML_DOTTED_VERSION);
      HHVM_RC_STR(LIBXML_LOADED_VERSION, xmlParserVersion);

      // For use with loading xml
      HHVM_RC_INT(LIBXML_NOENT, XML_PARSE_NOENT);
      HHVM_RC_INT(LIBXML_DTDLOAD, XML_PARSE_DTDLOAD);
      HHVM_RC_INT(LIBXML_DTDATTR, XML_PARSE_DTDATTR);
      HHVM_RC_INT(LIBXML_DTDVALID, XML_PARSE_DTDVALID);
      HHVM_RC_INT(LIBXML_NOERROR, XML_PARSE_NOERROR);
      HHVM_RC_INT(LIBXML_NOWARNING, XML_PARSE_NOWARNING);
      HHVM_RC_INT(LIBXML_NOBLANKS, XML_PARSE_NOBLANKS);
      HHVM_RC_INT(LIBXML_XINCLUDE, XML_PARSE_XINCLUDE);
      HHVM_RC_INT(LIBXML_NSCLEAN, XML_PARSE_NSCLEAN);
      HHVM_RC_INT(LIBXML_NOCDATA, XML_PARSE_NOCDATA);
      HHVM_RC_INT(LIBXML_NONET, XML_PARSE_NONET);
      HHVM_RC_INT(LIBXML_PEDANTIC, XML_PARSE_PEDANTIC);
      HHVM_RC_INT(LIBXML_COMPACT, XML_PARSE_COMPACT);
      HHVM_RC_INT(LIBXML_NOXMLDECL, XML_SAVE_NO_DECL);
      HHVM_RC_INT(LIBXML_PARSEHUGE, XML_PARSE_HUGE);
      HHVM_RC_INT(LIBXML_NOEMPTYTAG, LIBXML_SAVE_NOEMPTYTAG);

      // Schema validation options
#if defined(LIBXML_SCHEMAS_ENABLED)
      HHVM_RC_INT(LIBXML_SCHEMA_CREATE, XML_SCHEMA_VAL_VC_I_CREATE);
#endif

      // Additional constants for use with loading html
#if LIBXML_VERSION >= 20707
      HHVM_RC_INT(LIBXML_HTML_NOIMPLIED, HTML_PARSE_NOIMPLIED);
#endif

#if LIBXML_VERSION >= 20708
      HHVM_RC_INT(LIBXML_HTML_NODEFDTD, HTML_PARSE_NODEFDTD);
#endif

      // Error levels
      HHVM_RC_INT(LIBXML_ERR_NONE, XML_ERR_NONE);
      HHVM_RC_INT(LIBXML_ERR_WARNING, XML_ERR_WARNING);
      HHVM_RC_INT(LIBXML_ERR_ERROR, XML_ERR_ERROR);
      HHVM_RC_INT(LIBXML_ERR_FATAL, XML_ERR_FATAL);

      HHVM_FE(libxml_get_errors);
      HHVM_FE(libxml_get_last_error);
      HHVM_FE(libxml_clear_errors);
      HHVM_FE(libxml_use_internal_errors);
      HHVM_FE(libxml_suppress_errors);
      HHVM_FE(libxml_disable_entity_loader);
      HHVM_FE(libxml_set_streams_context);

      loadSystemlib();

      s_LibXMLError_class = Unit::lookupClass(s_LibXMLError.get());

      // Set up callbacks to support stream wrappers for reading and writing
      // xml files and loading external entities.
      xmlParserInputBufferCreateFilenameDefault(libxml_create_input_buffer);
      xmlOutputBufferCreateFilenameDefault(libxml_create_output_buffer);
      s_default_entity_loader = xmlGetExternalEntityLoader();
      xmlSetExternalEntityLoader(libxml_ext_entity_loader);
    }
Exemplo n.º 5
0
  void moduleInit() override {
    HHVM_RC_STR(PCRE_VERSION, pcre_version());

    HHVM_RC_INT(PREG_NO_ERROR, PHP_PCRE_NO_ERROR);
    HHVM_RC_INT(PREG_INTERNAL_ERROR, PHP_PCRE_INTERNAL_ERROR);
    HHVM_RC_INT(PREG_BACKTRACK_LIMIT_ERROR, PHP_PCRE_BACKTRACK_LIMIT_ERROR);
    HHVM_RC_INT(PREG_RECURSION_LIMIT_ERROR, PHP_PCRE_RECURSION_LIMIT_ERROR);
    HHVM_RC_INT(PREG_BAD_UTF8_ERROR, PHP_PCRE_BAD_UTF8_ERROR);
    HHVM_RC_INT(PREG_BAD_UTF8_OFFSET_ERROR, PHP_PCRE_BAD_UTF8_OFFSET_ERROR);

    HHVM_RC_INT_SAME(PREG_PATTERN_ORDER);
    HHVM_RC_INT_SAME(PREG_SET_ORDER);
    HHVM_RC_INT_SAME(PREG_OFFSET_CAPTURE);

    HHVM_RC_INT_SAME(PREG_SPLIT_NO_EMPTY);
    HHVM_RC_INT_SAME(PREG_SPLIT_DELIM_CAPTURE);
    HHVM_RC_INT_SAME(PREG_SPLIT_OFFSET_CAPTURE);

    HHVM_RC_INT_SAME(PREG_GREP_INVERT);

#ifdef WNOHANG
    HHVM_RC_INT_SAME(WNOHANG);
#endif
#ifdef WUNTRACED
    HHVM_RC_INT_SAME(WUNTRACED);
#endif

#ifdef PRIO_PGRP
    HHVM_RC_INT_SAME(PRIO_PGRP);
#endif
#ifdef PRIO_USER
    HHVM_RC_INT_SAME(PRIO_USER);
#endif
#ifdef PRIO_PROCESS
    HHVM_RC_INT_SAME(PRIO_PROCESS);
#endif

    HHVM_FE(preg_filter);
    HHVM_FE(preg_grep);
    HHVM_FE(preg_match);
    HHVM_FE(preg_match_all);
    HHVM_FE(preg_replace);
    HHVM_FE(preg_replace_callback);
    HHVM_FE(preg_replace_callback_array);
    HHVM_FE(preg_split);
    HHVM_FE(preg_quote);
    HHVM_FE(preg_last_error);
    HHVM_FE(ereg_replace);
    HHVM_FE(eregi_replace);
    HHVM_FE(ereg);
    HHVM_FE(eregi);
    HHVM_FE(split);
    HHVM_FE(spliti);
    HHVM_FE(sql_regcase);

    loadSystemlib();

    pcre_config(PCRE_CONFIG_JIT, &s_pcre_has_jit);
    IniSetting::Bind(this, IniSetting::PHP_INI_ONLY,
                     "hhvm.pcre.jit",
                     &s_pcre_has_jit);
  }
Exemplo n.º 6
0
Arquivo: icu.cpp Projeto: KOgames/hhvm
void IntlExtension::bindConstants() {
#ifdef U_ICU_DATA_VERSION
  HHVM_RC_STR(INTL_ICU_DATA_VERSION, U_ICU_DATA_VERSION);
#endif
  HHVM_RC_STR(INTL_ICU_VERSION, U_ICU_VERSION);

  // UErrorCode constants
  HHVM_RC_INT_SAME(U_AMBIGUOUS_ALIAS_WARNING);
  HHVM_RC_INT_SAME(U_BAD_VARIABLE_DEFINITION);
  HHVM_RC_INT_SAME(U_BRK_ASSIGN_ERROR);
  HHVM_RC_INT_SAME(U_BRK_ERROR_LIMIT);
  HHVM_RC_INT_SAME(U_BRK_ERROR_START);
  HHVM_RC_INT_SAME(U_BRK_HEX_DIGITS_EXPECTED);
  HHVM_RC_INT_SAME(U_BRK_INIT_ERROR);
  HHVM_RC_INT_SAME(U_BRK_INTERNAL_ERROR);
  HHVM_RC_INT_SAME(U_BRK_MALFORMED_RULE_TAG);
  HHVM_RC_INT_SAME(U_BRK_MISMATCHED_PAREN);
  HHVM_RC_INT_SAME(U_BRK_NEW_LINE_IN_QUOTED_STRING);
  HHVM_RC_INT_SAME(U_BRK_RULE_EMPTY_SET);
  HHVM_RC_INT_SAME(U_BRK_RULE_SYNTAX);
  HHVM_RC_INT_SAME(U_BRK_SEMICOLON_EXPECTED);
  HHVM_RC_INT_SAME(U_BRK_UNCLOSED_SET);
  HHVM_RC_INT_SAME(U_BRK_UNDEFINED_VARIABLE);
  HHVM_RC_INT_SAME(U_BRK_UNRECOGNIZED_OPTION);
  HHVM_RC_INT_SAME(U_BRK_VARIABLE_REDFINITION);
  HHVM_RC_INT_SAME(U_BUFFER_OVERFLOW_ERROR);
  HHVM_RC_INT_SAME(U_CE_NOT_FOUND_ERROR);
  HHVM_RC_INT_SAME(U_COLLATOR_VERSION_MISMATCH);
  HHVM_RC_INT_SAME(U_DIFFERENT_UCA_VERSION);
  HHVM_RC_INT_SAME(U_ENUM_OUT_OF_SYNC_ERROR);
  HHVM_RC_INT_SAME(U_ERROR_LIMIT);
  HHVM_RC_INT_SAME(U_ERROR_WARNING_LIMIT);
  HHVM_RC_INT_SAME(U_ERROR_WARNING_START);
  HHVM_RC_INT_SAME(U_FILE_ACCESS_ERROR);
  HHVM_RC_INT_SAME(U_FMT_PARSE_ERROR_LIMIT);
  HHVM_RC_INT_SAME(U_FMT_PARSE_ERROR_START);
  HHVM_RC_INT_SAME(U_ILLEGAL_ARGUMENT_ERROR);
  HHVM_RC_INT_SAME(U_ILLEGAL_CHARACTER);
  HHVM_RC_INT_SAME(U_ILLEGAL_CHAR_FOUND);
  HHVM_RC_INT_SAME(U_ILLEGAL_CHAR_IN_SEGMENT);
  HHVM_RC_INT_SAME(U_ILLEGAL_ESCAPE_SEQUENCE);
  HHVM_RC_INT_SAME(U_ILLEGAL_PAD_POSITION);
  HHVM_RC_INT_SAME(U_INDEX_OUTOFBOUNDS_ERROR);
  HHVM_RC_INT_SAME(U_INTERNAL_PROGRAM_ERROR);
  HHVM_RC_INT_SAME(U_INTERNAL_TRANSLITERATOR_ERROR);
  HHVM_RC_INT_SAME(U_INVALID_CHAR_FOUND);
  HHVM_RC_INT_SAME(U_INVALID_FORMAT_ERROR);
  HHVM_RC_INT_SAME(U_INVALID_FUNCTION);
  HHVM_RC_INT_SAME(U_INVALID_ID);
  HHVM_RC_INT_SAME(U_INVALID_PROPERTY_PATTERN);
  HHVM_RC_INT_SAME(U_INVALID_RBT_SYNTAX);
  HHVM_RC_INT_SAME(U_INVALID_STATE_ERROR);
  HHVM_RC_INT_SAME(U_INVALID_TABLE_FILE);
  HHVM_RC_INT_SAME(U_INVALID_TABLE_FORMAT);
  HHVM_RC_INT_SAME(U_INVARIANT_CONVERSION_ERROR);
  HHVM_RC_INT_SAME(U_MALFORMED_EXPONENTIAL_PATTERN);
  HHVM_RC_INT_SAME(U_MALFORMED_PRAGMA);
  HHVM_RC_INT_SAME(U_MALFORMED_RULE);
  HHVM_RC_INT_SAME(U_MALFORMED_SET);
  HHVM_RC_INT_SAME(U_MALFORMED_SYMBOL_REFERENCE);
  HHVM_RC_INT_SAME(U_MALFORMED_UNICODE_ESCAPE);
  HHVM_RC_INT_SAME(U_MALFORMED_VARIABLE_DEFINITION);
  HHVM_RC_INT_SAME(U_MALFORMED_VARIABLE_REFERENCE);
  HHVM_RC_INT_SAME(U_MEMORY_ALLOCATION_ERROR);
  HHVM_RC_INT_SAME(U_MESSAGE_PARSE_ERROR);
  HHVM_RC_INT_SAME(U_MISMATCHED_SEGMENT_DELIMITERS);
  HHVM_RC_INT_SAME(U_MISPLACED_ANCHOR_START);
  HHVM_RC_INT_SAME(U_MISPLACED_COMPOUND_FILTER);
  HHVM_RC_INT_SAME(U_MISPLACED_CURSOR_OFFSET);
  HHVM_RC_INT_SAME(U_MISPLACED_QUANTIFIER);
  HHVM_RC_INT_SAME(U_MISSING_OPERATOR);
  HHVM_RC_INT_SAME(U_MISSING_RESOURCE_ERROR);
  HHVM_RC_INT_SAME(U_MISSING_SEGMENT_CLOSE);
  HHVM_RC_INT_SAME(U_MULTIPLE_ANTE_CONTEXTS);
  HHVM_RC_INT_SAME(U_MULTIPLE_COMPOUND_FILTERS);
  HHVM_RC_INT_SAME(U_MULTIPLE_CURSORS);
  HHVM_RC_INT_SAME(U_MULTIPLE_EXPONENTIAL_SYMBOLS);
  HHVM_RC_INT_SAME(U_MULTIPLE_PAD_SPECIFIERS);
  HHVM_RC_INT_SAME(U_MULTIPLE_PERCENT_SYMBOLS);
  HHVM_RC_INT_SAME(U_MULTIPLE_PERMILL_SYMBOLS);
  HHVM_RC_INT_SAME(U_MULTIPLE_POST_CONTEXTS);
  HHVM_RC_INT_SAME(U_NO_SPACE_AVAILABLE);
  HHVM_RC_INT_SAME(U_NO_WRITE_PERMISSION);
  HHVM_RC_INT_SAME(U_PARSE_ERROR);
  HHVM_RC_INT_SAME(U_PARSE_ERROR_LIMIT);
  HHVM_RC_INT_SAME(U_PARSE_ERROR_START);
  HHVM_RC_INT_SAME(U_PATTERN_SYNTAX_ERROR);
  HHVM_RC_INT_SAME(U_PRIMARY_TOO_LONG_ERROR);
  HHVM_RC_INT_SAME(U_REGEX_BAD_ESCAPE_SEQUENCE);
  HHVM_RC_INT_SAME(U_REGEX_BAD_INTERVAL);
  HHVM_RC_INT_SAME(U_REGEX_ERROR_LIMIT);
  HHVM_RC_INT_SAME(U_REGEX_ERROR_START);
  HHVM_RC_INT_SAME(U_REGEX_INTERNAL_ERROR);
  HHVM_RC_INT_SAME(U_REGEX_INVALID_BACK_REF);
  HHVM_RC_INT_SAME(U_REGEX_INVALID_FLAG);
  HHVM_RC_INT_SAME(U_REGEX_INVALID_STATE);
  HHVM_RC_INT_SAME(U_REGEX_LOOK_BEHIND_LIMIT);
  HHVM_RC_INT_SAME(U_REGEX_MAX_LT_MIN);
  HHVM_RC_INT_SAME(U_REGEX_MISMATCHED_PAREN);
  HHVM_RC_INT_SAME(U_REGEX_NUMBER_TOO_BIG);
  HHVM_RC_INT_SAME(U_REGEX_PROPERTY_SYNTAX);
  HHVM_RC_INT_SAME(U_REGEX_RULE_SYNTAX);
  HHVM_RC_INT_SAME(U_REGEX_SET_CONTAINS_STRING);
  HHVM_RC_INT_SAME(U_REGEX_UNIMPLEMENTED);
  HHVM_RC_INT_SAME(U_RESOURCE_TYPE_MISMATCH);
  HHVM_RC_INT_SAME(U_RULE_MASK_ERROR);
  HHVM_RC_INT_SAME(U_SAFECLONE_ALLOCATED_WARNING);
  HHVM_RC_INT_SAME(U_SORT_KEY_TOO_SHORT_WARNING);
  HHVM_RC_INT_SAME(U_STANDARD_ERROR_LIMIT);
  HHVM_RC_INT_SAME(U_STATE_OLD_WARNING);
  HHVM_RC_INT_SAME(U_STATE_TOO_OLD_ERROR);
  HHVM_RC_INT_SAME(U_STRING_NOT_TERMINATED_WARNING);
  HHVM_RC_INT_SAME(U_TOO_MANY_ALIASES_ERROR);
  HHVM_RC_INT_SAME(U_TRAILING_BACKSLASH);
  HHVM_RC_INT_SAME(U_TRUNCATED_CHAR_FOUND);
  HHVM_RC_INT_SAME(U_UNCLOSED_SEGMENT);
  HHVM_RC_INT_SAME(U_UNDEFINED_SEGMENT_REFERENCE);
  HHVM_RC_INT_SAME(U_UNDEFINED_VARIABLE);
  HHVM_RC_INT_SAME(U_UNEXPECTED_TOKEN);
  HHVM_RC_INT_SAME(U_UNMATCHED_BRACES);
  HHVM_RC_INT_SAME(U_UNQUOTED_SPECIAL);
  HHVM_RC_INT_SAME(U_UNSUPPORTED_ATTRIBUTE);
  HHVM_RC_INT_SAME(U_UNSUPPORTED_ERROR);
  HHVM_RC_INT_SAME(U_UNSUPPORTED_ESCAPE_SEQUENCE);
  HHVM_RC_INT_SAME(U_UNSUPPORTED_PROPERTY);
  HHVM_RC_INT_SAME(U_UNTERMINATED_QUOTE);
  HHVM_RC_INT_SAME(U_USELESS_COLLATOR_ERROR);
  HHVM_RC_INT_SAME(U_USING_DEFAULT_WARNING);
  HHVM_RC_INT_SAME(U_USING_FALLBACK_WARNING);
  HHVM_RC_INT_SAME(U_VARIABLE_RANGE_EXHAUSTED);
  HHVM_RC_INT_SAME(U_VARIABLE_RANGE_OVERLAP);
  HHVM_RC_INT_SAME(U_ZERO_ERROR);

  // Legacy constants
#ifndef U_STRINGPREP_PROHIBITED_ERROR
# define U_STRINGPREP_PROHIBITED_ERROR 66560
#endif
#ifndef U_STRINGPREP_UNASSIGNED_ERROR
# define U_STRINGPREP_UNASSIGNED_ERROR 66561
#endif
#ifndef U_STRINGPREP_CHECK_BIDI_ERROR
# define U_STRINGPREP_CHECK_BIDI_ERROR 66562
#endif
  HHVM_RC_INT_SAME(U_STRINGPREP_PROHIBITED_ERROR);
  HHVM_RC_INT_SAME(U_STRINGPREP_UNASSIGNED_ERROR);
  HHVM_RC_INT_SAME(U_STRINGPREP_CHECK_BIDI_ERROR);
}