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

    <tr>
        <th>Summary</th>
        <td>
            llvm 15.0.7 breaks API with 15.0.6
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </td>
    </tr>

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

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

<pre>
    This is not API compatible.

HeaderCallbacks::InclusionDirective(clang::SourceLocation, cons
t clang::Token&, llvm::StringRef, bool, clang::CharSourceRange, const clang::FileEntry*,
llvm::StringRef, llvm::StringRef, const clang::Module*, clang::SrcMgr::CharacteristicKind
)’ marked ‘override’, but does not override

The class is defined as:

class HeaderCallbacks : public clang::PPCallbacks


PPCallbacks changed File* to Optional<File> on the method InclusionDirective, this breaks the API promise.

➜ diagram-server clang --version
clang version 15.0.7
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin

Used to work on llvm 15.0.6
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJx0VNFuqzgQ_RrzYhGBIRAeeMgmQVvtVlu13efVYE_AG2NHtknbv78yJA299_bFkcbHZ86cMwGck51GrMn6D7LeRzD63tjac9DQWrhA1BrxUb_20lHpqDaebp8eKDfDGbxsFa5IsifJdj7_RBBod6BUC_zkSLYl2fZBczU6afReWuReXpCwDVegu_n-xYyW49-Gg5dGE7aj3Gg3E3q6AL6aE2rCigBR6jJcn3srdfeMx1BujVETw_3Vrgc7t3gG3eGN_wtzIxUetLcfhG0J2829v2nxTfkXzkcjRoUz4bL-YvljZ-_agHu00nnJ_5JaXN1kFTkwsklIVdEB7AkFvRU25oLWSoGfiGnw0VNhcE7oE7GI5rXHoMJNMQo8So2CwhTRAjUjfoqRkmxLz2OrJF8O8vR0D3pBMZ-LS8r7YLygwWXCttQb-s85ZA2KZLupmh2o0dT3SAf0vRH0d0uzoz6sYWsRTm4Ch1U8WzNI93UPgzXVgVQ7KiR0FobYob2gneXTOL6gDeSfQ-uOXks0Xa-SVXk1DWyHPoz_vin-K_L4zGMl9fged3q8-WoRBB2MQDX5ZJx8n68etPOgFIq9DHlTwprRWcKaVuql2n8dimDKm7GnYEPYsFlGEYk6E1VWQYR1WpR5kudlXkZ9XWywTErIEsyxSnlblXkmWIGsLBDSDCNZs4RlSZpuUsbWebkCPCLmAtojz1maFCRPcACpVqHdytguks6NWBdJyvJIQYvK3b4Ktg6guB07R_JESefd_ZmXXmF9F13eEgrpvEnf32YZrap778_T0rGGsKaTvh_bFTcDYc30x5p_4rM1_yP3hDWTKEdYM-n6EQAA___7Onao">