When xhpast version is out of date and I'm running arc lint, then this is what ArcanistPhutilXHPASTLinter outputs:
Exception Some linters failed: - ArcanistPhutilXHPASTLinter: PhutilProxyException: Your version of 'xhpast' is unbuilt or out of date. Run this script to build it: $ /usr/local/phabricator/libphutil/scripts/build_xhpast.php - ArcanistXHPASTLinter: PhutilProxyException: Your version of 'xhpast' is unbuilt or out of date. Run this script to build it: $ /usr/local/phabricator/libphutil/scripts/build_xhpast.php - ArcanistPhutilLibraryLinter: CommandException: Command failed with error #2! COMMAND 'gmake' -C '/usr/local/phabricator/libphutil/support/xhpast' 'clean' 'all' 'install' STDOUT gmake: Entering directory `/usr/local/phabricator/libphutil/support/xhpast' rm xhpast parser.yacc.output libxhpast.a *.o 2>/dev/null g++ -c -fPIC -g -Wall -O3 -minline-all-stringops -o scanner.lex.o scanner.lex.cpp gmake: Leaving directory `/usr/local/phabricator/libphutil/support/xhpast' STDERR gmake: [clean] Error 1 (ignored) scanner.lex.cpp: In function ‘yy_state_type yy_try_NUL_trans(yy_state_type, void*)’: scanner.lex.cpp:5227:23: warning: unused variable ‘yyg’ Assembler messages: Fatal error: can't create scanner.lex.o: Permission denied gmake: *** [scanner.lex.o] Error 1 (Run with `--trace` for a full exception trace.)
Problem is, that file referenced /usr/local/phabricator/libphutil/scripts/build_xhpast.php doesn't exist. I only have /usr/local/phabricator/libphutil/scripts/build_xhpast.sh (the sh file extension instead of php file extension).