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

    <tr>
        <th>Summary</th>
        <td>
            clang-tidy: modernize-concat-nested-namespaces has false positives and deletes macros with fixits
        </td>
    </tr>

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

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

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

<pre>
    I tried running modernize-concat-nested-namespaces on the entire PyTorch repo and found some edge cases.

Specifically,

```
namespace a {
namespace b {
}
/* IMPORTANT IFDEF AND MACROS HERE */
}
```
Where any important ifdef logic or macros are deleted in the fixit (which breaks compilation later), which is definitely not ideal. It would be great if the check didn't apply the fixit where important non-namespace comments, macros, or other code is not deleted.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMUk1vozoU_TVmc5XIMYGEBYu0afSy6IfaSm9t7AvcV2Mj2zSP-fUjIDPpdDUSAnM_fM6598gQqLGIJcvuWHZM5BBb58u3j9GQs5zvksrpsTxD9IQa_GAt2QY6p9Fb-oEr5ayScWUxRNQrKzsMvVQYwFmILQLaSB7hZXx3XrXgsXcgrYbaDVZDcB0C6gZByYBhzfiR8cPyfutRUU1KGjMycf81xXJ-febf36ggge3uvgerW5DtjteDODFxgPPjy_Pr--HpHc6n48MJDk9HeDzcvz6_wT8Prw_AxFz5rfdP9H9b9AjSjkBd73yUNgLVGmswriEFzkMnlXcBpEfQaDCiBlrGU9P_FIGJ_aUl1ULlUX4EUK7rychIzoKRET0TBRP3sBRRAI01WYpoRrAuAmmUZg3nCBc3GA0VQuNRTjxmFNWi-gBN2jKxiyD73oxf4C-zght76-xtkxOZDm0ME4FFyHRyHlxs0YNyGidKE4-ruHWiy1QXaSETLDf5Lt2JIhd50pai4lWqMl5XRaH2aSEzzQuV4i6vtCxEllApuEj5ZrMVPEu3-Xq_rQqZqn2-wa0uNhnbcuwkmbUxn93a-SahEAYsc87TLDGyQhNmMwth8QJzkgkxeduXU8-qGprAttxQiOF2S6RosFRG2mYVSY8sPfyNy1sZoJYmIPQuUKRPDLO9l0mEX5u_UGyXYYdk8KZsY-wDSxcbnhqK7VCtleuYOE2Mrp9V791_qCITp1lHYOI06_wZAAD__8z2Nj8">