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

    <tr>
        <th>Summary</th>
        <td>
            Bogus alignment mismatch diagnostic
        </td>
    </tr>

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

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

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

<pre>
    Testcase ( https://godbolt.org/z/o1b83cEbG )
```
#include <cstdint>

using UnalignedType [[gnu::aligned(1)]] = struct
{
    uint32_t x;
};

alignas(4) UnalignedType alignedVariable{};

void f(UnalignedType)
{}

static_assert(alignof(UnalignedType) == 1);
static_assert(alignof(alignedVariable) == 4);

int main()
{
 f(alignedVariable);
}
```

The diagnostic reported is
> passing 1-byte aligned argument to 4-byte aligned parameter `'this'` of `'UnalignedType'` may result in an unaligned pointer access `[-Walign-mismatch]`
> `   18 | f(alignedVariable);`
> `      |       ^`

However, the argument `alignedVariable` is 4-byte aligned, and I would expect `UnalignedType` to be a one-byte aligned parameter; the reported alignments seem to be reversed
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJx8VE2PozgQ_TXFpZSWKUOAAwfSSfbjtIfe3ePI4GriFdgRNt2T_fUr02wyjWZGihSLV-_Vq2erlPemt8w15AfIj4maw8VN9R-_H9wtaZ2-1S_sQ6c8I1CJlxCuHmQDdAY69063bghPbuqBzv8CnV3alrI7tb8gUAWigb1Yf6IBksZ2w6wZQT53PmhjA8hThEQze2N7_NOqIfrRL7cr4-Lp0Ns5dpTNCgGVaVTPj5AfEeQRfZjmLkSd4gCiQUScjQ2SvgT8CvKwIMf1ID50lAcqM6Bq03M9_6Umo9qBo-I31DdnNL4ClZ9I66wfpUudDyqY7ovynqcAVC7F7nvEOECcYRlpafNj7tbbg53d2SAaYwOOylig8uFMNPh9iUc-m-sSzcuFURvVW-eD6XDiq5sCazQ-4vKE1_h8bI_prr2Fe3aopn4e2QYMDrPP0FVNauTAE8YuVISL8UAF7AW61_XbJqIFHNUNJ_bzENBYVBZne5d0xkZB1XXs_aKRH3Z_L_BuNH5UobvE1_IxljzFEkRMS4Ti-SepbOoRl_r1lJ_uMf3q3vmNJ6BnDBd-TA97sRXeCzR-k0nkKavxN3x386CRv165W9ifg9iLmGfLqNBZ_kGsIA-LiftdLRXRjkfPPK4SUzTsWSe6lrqSlUq4TgtZFmVGxT651EXJukwVUddmmso8rbKClBZS5K9MkhNTk6BckMjTShb5_inPmJSoKNdFK9JKQyZ4VGZ4Goa3Ma6IxHg_c51SXqX7ZFAtD35ZO0SW33FBgShuoamOpF079x4yMRgf_EMmmDBwfXD97B_T4f8X_c2DTeZpqDcby4TL3D51bgQ6R8X1b3ed3D_cBaDz4sMDnVejbzX9FwAA__9cQZaA">