enhance HHVM compat