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

    <tr>
        <th>Summary</th>
        <td>
            [clang-tidy] compiler flag '-Warray-compare' does not take effect
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            clang-tidy
      </td>
    </tr>

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

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

<pre>
    
clangd version
```shell
[li@ArchLinux-li cpp]$ clangd --version
clangd version 18.1.8
Features: linux
Platform: x86_64-pc-linux-gnu
[li@ArchLinux-li cpp]$ clang-tidy --version
LLVM (http://llvm.org/):
  LLVM version 18.1.8
  Optimized build.
```

my `.clangd` file:
```yaml
Diagnostics:
 ClangTidy:
        Remove: 
            - modernize-use-trailing-return-type
            - modernize-use-nullptr
 - modernize-use-using
            - modernize-use-bool-literals
            - modernize-use-equals-default
 - modernize-avoid-c-arrays
            - modernize-redundant-void-arg
            - modernize-deprecated-headers
            - bugprone-easily-swappable-parameters
        Add: 
            - modernize*
            - bugprone-* 
            - performance-*
CompileFlags:
    Add: 
        - "-ferror-limit=0"
        - "-fdelete-null-pointer-checks"
 - "-Wall"
        - "-Wextra"
        - "-Wpedantic"
        - "-Wformat=2"
        - "-Wnull-dereference"
        - "-Wpointer-compare"
        - "-Wstring-compare"
        - "-Warray-compare"
        - "-Wno-unused-but-set-variable"
 - "-Wno-unused-but-set-parameter"
        - "-Wno-unused-variable"
 - "-Wno-unused-parameter"
        - "-Wno-unused-label"
 - "-Wno-unused-function"
        
```


my test code `main.cpp`:
```cpp

#include <iostream>

typedef struct {
 char str[16];
  int id[16];
} MyObj;

bool myobj_equal(const MyObj &obj1, const MyObj &obj2) {
  if (obj1.str != obj2.str) // compare array here, expect warning !!!
    return false;
  if (obj1.id != obj2.id) // compare array here, expect warning !!!
    return false;
 return true;
}

int main(int argc, char *argv[]) {
  //
  char str1[16] = "hello";
  char str2[16] = "hello";
  if (str1 == str2) {
    std::cout << "same string";
  }
  //
  MyObj a1 = {.str = "hello"};
  MyObj a2 = {.str = "hello"};
  if (myobj_equal(a1, a2)) {
    std::cout << "same obj";
  }
  return 0;
}

```

only the following warnings pops up:
![image](https://github.com/user-attachments/assets/dea82e61-02e4-4cbe-942d-e6795e7fdcc7)

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0V0uP4jgQ_jXmYhklDiFw4EA326cezWq12jmOHLsS3OPYWT-YZn79yg7vR9NzWISAlL_6XI8vFcOck60GWKDyCZWrEQt-bezCeejXoF8Dl6BHtRHbBcpWKFtyxXQr8Aask0YPNjTNhrdbg1I7W_mkJJpkS8vXr1KHd6Ik5n2PyhWiE7yjIeSM6Jwc57NxPp4NSy_AfLDgULHEKvIN5j8V842xXTS_z6bfpxPSc5IApNXh87EQL8X2Mp7X13--YERna-97VCwRfUH0RalNNza2TVfzaE5YjBP6VuwYf-297OQvELgOUonxRd12l-mz22I0zcZDKdA0w41UcNjl4LJl3a7SK8labZyX3B2DeY7uf0uxPYlveP0FndlEQnxujy-COyPAavkLSHBAvGVSSd0SCz5YTfy2h8deOijVe7sDXq4GJ3X7mKQ2RhElPVim3GM4_BuYckRAw4LyN7ZmGyMF4YRZy7YPCC2IoAXTniQnZh_EK6C3wJkHQdbABNib_HVoe2s0EGBOqi1xP1nfs1oB6ZllHfgrv6UQD_uE6PLDzRC9TdCDjfcN0zxhBsiz6Xqp4EWx1p0J52YkBCNKSQPWGkuU7KRHxSpDlN6ECVDgB3GQ3kjtwRK-Bv7DHT0G6Dem1B2Wb_DuLbu32ENsmuT31lPCMUh6D5GiE2ChAQuaw92d9gmYrmf2Lsx5G--eB6gkyUcgbUjQwYEgdfDEgScbZmWUz1X5rqEHgT1m_wTrb7ApVoP6gKoJmvs4bi-ZPhiQhzHpwXnMjYA4MDsm9TjO9Gl2PSyj_ZSBFlJzFaJn8SyN8xZYh4o_TkFx1glosPM2cI9R9bSLkK-ZjVZUPuXT-Agp9itYao-luFpA1Qp_2X6t346W9BlnHO62pn77nuYXojNutPMDGCM6NfVbjugzvjZTROcnQWHZxAdVxI-dtxjRHBUrHIHxOoHT0wvvdIaT6vAaouSeMbz3wD3-yayWuk3uw_vQleERgBumHJymfNxXirNtpfjfdt1ZvQ1wWuTT2sZWRE0gOos_mW15KmRsHqJLZtvNcOK5qOMQ7_5q3-t831Mc00OUxoOOiao9VmKPpZ_ADlWLxBEUccnxPBSMnY9jFxVLboKPWkXFc2R0rAM8DJdz3kMRLhMZpMPyIabqaRDJRXzVqZZ3HvTzHkNS53pmSb4spvZ72Zn67W5qu_Zn93p_c2wYrbbYrwE3RinzM-ptpzuHe9M7HPrj4KCx4bJjLSSFpAOgO5wAW-nXoR5z0yH6EhxYwrxnfN2B9g7RF-YcpB8C2IzCNCcZhQmZ8BrIfEIFgWk1L6FqBOdVrEzadCQWhZgXczaCRV4VWZWX81k5Wi_obDYVOUDJi6apBRTQsFpUE84r3oiZGMkFzegkz7NJntEpLcfzrGTNXLB50ZTTOq_RJIOOSTXen11H0rkAizyfVFU2SlPapX8AlB5Pw7H-5WpkF9GL1KF1aJIp6bw78njpVfrvcOJWrtLtLhVY3CgW7-vq6ilXYWHAYW089uwHYGga4H4UrFp8UOy47-6L9Na8AfeIvqRkYr13-WwW9L8AAAD__3L0oBQ">