<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/57271>57271</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            arc diff fails with php 8.1 on Ubuntu 22.04
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          hiraditya
      </td>
    </tr>
</table>

<pre>
    $ arc diff HEAD~

```sh
PHP Deprecated:  Function libxml_disable_entity_loader() is deprecated in /usr/share/arcanist/support/init/init-script.php on line 92

Deprecated: Function libxml_disable_entity_loader() is deprecated in /usr/share/arcanist/support/init/init-script.php on line 92
PHP Fatal error:  Uncaught Exception: Error while loading file "/usr/share/arcanist/src/object/Phobject.php": Return type of Phobject::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/arcanist/src/init/lib/PhutilBootloader.php:275
Stack trace:
#0 /usr/share/arcanist/src/init/lib/PhutilBootloader.php(207): PhutilBootloader->executeInclude()
#1 /usr/share/arcanist/src/symbols/PhutilSymbolLoader.php(422): PhutilBootloader->loadLibrarySource()
#2 /usr/share/arcanist/src/symbols/PhutilSymbolLoader.php(277): PhutilSymbolLoader->loadSymbol()
#3 /usr/share/arcanist/src/init/init-library.php(23): PhutilSymbolLoader->selectAndLoadSymbols()
#4 /usr/share/arcanist/src/filesystem/Filesystem.php(18): __phutil_autoload()
#5 /usr/share/arcanist/src/init/lib/PhutilBootloader.php(247): include_once('...')
#6 /usr/share/arcanist/src/init/lib/PhutilBootloader.php(207): PhutilBootloader->executeInclude()
#7 /usr/share/arcanist/src/symbols/PhutilSymbolLoader.php(422): PhutilBootloader->loadLibrarySource()
#8 /usr/share/arcanist/src/symbols/PhutilSymbolLoader.php(277): PhutilSymbolLoader->loadSymbol()
#9 /usr/share/arcanist/src/init/init-library.php(23): PhutilSymbolLoader->selectAndLoadSymbols()
#10 /usr/share/arcanist/src/init/lib/PhutilBootloader.php(97): __phutil_autoload()
#11 /usr/share/arcanist/src/init/lib/PhutilBootloader.php(21): PhutilBootloader->registerLibrary()
#12 /usr/share/arcanist/src/init/init-library.php(70): PhutilBootloader::newLibrary()
#13 /usr/share/arcanist/support/init/init-script.php(96): require_once('...')
#14 /usr/share/arcanist/support/init/init-script.php(115): __arcanist_init_script__()
#15 /usr/share/arcanist/support/init/init-arcanist.php(3): require_once('...')
#16 /usr/share/arcanist/bin/arc(10): require_once('...')
#17 {main}
  thrown in /usr/share/arcanist/src/init/lib/PhutilBootloader.php on line 275

Fatal error: Uncaught Exception: Error while loading file "/usr/share/arcanist/src/object/Phobject.php": Return type of Phobject::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /usr/share/arcanist/src/init/lib/PhutilBootloader.php:275
Stack trace:
#0 /usr/share/arcanist/src/init/lib/PhutilBootloader.php(207): PhutilBootloader->executeInclude()
#1 /usr/share/arcanist/src/symbols/PhutilSymbolLoader.php(422): PhutilBootloader->loadLibrarySource()
#2 /usr/share/arcanist/src/symbols/PhutilSymbolLoader.php(277): PhutilSymbolLoader->loadSymbol()
#3 /usr/share/arcanist/src/init/init-library.php(23): PhutilSymbolLoader->selectAndLoadSymbols()
#4 /usr/share/arcanist/src/filesystem/Filesystem.php(18): __phutil_autoload()
#5 /usr/share/arcanist/src/init/lib/PhutilBootloader.php(247): include_once('...')
#6 /usr/share/arcanist/src/init/lib/PhutilBootloader.php(207): PhutilBootloader->executeInclude()
#7 /usr/share/arcanist/src/symbols/PhutilSymbolLoader.php(422): PhutilBootloader->loadLibrarySource()
#8 /usr/share/arcanist/src/symbols/PhutilSymbolLoader.php(277): PhutilSymbolLoader->loadSymbol()
#9 /usr/share/arcanist/src/init/init-library.php(23): PhutilSymbolLoader->selectAndLoadSymbols()
#10 /usr/share/arcanist/src/init/lib/PhutilBootloader.php(97): __phutil_autoload()
#11 /usr/share/arcanist/src/init/lib/PhutilBootloader.php(21): PhutilBootloader->registerLibrary()
#12 /usr/share/arcanist/src/init/init-library.php(70): PhutilBootloader::newLibrary()
#13 /usr/share/arcanist/support/init/init-script.php(96): require_once('...')
#14 /usr/share/arcanist/support/init/init-script.php(115): __arcanist_init_script__()
#15 /usr/share/arcanist/support/init/init-arcanist.php(3): require_once('...')
#16 /usr/share/arcanist/bin/arc(10): require_once('...')
#17 {main}
  thrown in /usr/share/arcanist/src/init/lib/PhutilBootloader.php on line 275
```


$ lsb_release -a
```
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04.1 LTS
Release:        22.04
Codename:       jammy
```

$ php --version
```
PHP 8.1.2 (cli) (built: Jul 21 2022 12:10:37) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.2, Copyright (c), by Zend Technologies
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJztWV1v4jgU_TXhxSJKHCDhgQdaYKeraraadrTSviAnuRDPGjtrO7T8-73OB9uy5WOkSp0HJJrE9rXP8b3Xzombqnw38eiAMJ2RnK9W5Mt8OvPiuRfMvGDaXkdB8zNFU_Hw5YHMoNSQMQu5F00JWVQys1xJInj6shHLnBuWCliCtNzulkKxHLRHE4-OCTck3_cmXBKPLiqDrQtTMA14RzZMcmNdVVWWSrsnLnl365tM89L6ZVGSGlMCGdPXnN_S-3XYOdctmGWCgNZK1777LjNWrQtL5i8ZlI6nq567dvJccAHEEeRyTVau4FF6kpLO8KrSH5C54kPRPDo2rieO_A1spSWxuxKIWpHOApvwp-GZy7z1hSlUJXIC3BagSQokU5uSWY6-I89YSe4saGbreRz0dUBbxbF0S3AeOAASj7zhjTe8bQg8If6fXIjbgsk1eMMZYdZqnlYWOmBErAxGwSpiYYOeZpqLHXFe12BMPapUlmdwNlC1V9ogYRbUnqksFzdK2Sb-tYeiKY2HTageLcv-JlazDNz0muSiUfAhODShQdy66dCg70VzeIEMHXEnM1Hl0Lq0oxBeQMHsNqkSZo__WJfvXzMYuEQ6ysA93fMUXb57VJXODknQjyFB47dueG3S0WjqDvCjy-NQL0rRzKWDjU6iGhC4IqYyv9_DmwP8wQX4br2ancHcxcJiX2g5hN06WS7LmsWSVVa5CR9ADT8q5Qadr3mTV0sl27jGvu_j9TXq6PMTPf4VEj355EQff3Kihx-1443jC_M9vGSDuyj1whNx17DG8UC3sT_kcMn-dtztcXAEuXlTSng-AntmWzujN5yXRy2yhn8qrk-v8fDMLnYeLgyH-6h2PZfObNmYLZeHMzyzm70L2Rm0oNHPTPH0PpZy2VS4uQQ_My5uTvHNhmH_eNbUEhQkWj3LDxIje_G4lyTN9UA_XuXjVT5e5eNVPl7l41U-XuXjVT5e5eNVPh6Rj91B7pvT3ZbRgAiTLjUuaGaA9Nm7Xb4qcv94QzYqr_BtRJAaYVvGhTtN9duTVyRZyzCUbXezWvqMv6eVtFV3MttEttGp-0ZCqR8M_JDcPz02ht8aKo1R3drU36ocJNu0DT_YZrM7NT2cmHNGv78FbRzoe7buWDbxQ9-t2iQT3KlXfEorLpywJb9XgtCQ0IBSEjoVjLGOplHc2n1Fzl1sb1W509zpcTeUM3hCmekAftOqKhujv0DmZC7XLjzbgQN2Qvf_XWu7J8gKiRvdmoPpMoU0Arpu_-MhYxlibJOjA7nKdHdsuL0zejAJR6MwxCVCx718EuXjaMx6llsBk_2_CFYYcNPgO88iqku112HsVVpMCmtL44JEF_hbo3mV-vgF4JJWbLtbv9Sq_dbgxlTgXoLDmMZhr5gkoyQZJCxPBxmNsxGMR0GKciANsiEM6SrsYd6BMBP3WUApboqkHsJ9pwxnPT5x4QoS_AsiGoz9VRyNkmgUQRwPgiBZeYMAcAEK3_HwlV739KSmlFZrg40CM9n818iM4WsJUMPh-Pj2KZSeFFzj15XdsV4NPqnJ_wuAjwJv">