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

    <tr>
        <th>Summary</th>
        <td>
            clang ignores non-weak function definition
        </td>
    </tr>

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

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

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

<pre>
    please see and compare output of https://godbolt.org/z/bahPa15fx between gcc and clang (both from trunk)

for me clang doesn't override default tsan weak function definition __tsan_default_suppressions() with mine one, defined in header file

what is more puzzling on my ubuntu 23 I can use workaround, define __tsan_default_suppressions() not in some header file but in one of the source files and then it correctly uses that definition (as if STRONG_IN_HEADER wasn't defined in godbolt sample), but on godbolt I wasn't able to make it use my redefinition even with this workaround

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyMk89u4zgMxp9GvhANZDlx4oMP3bbe7aW76M49kCXaViOLhv4kkzz9wE4GCQYYYC6SoI8kfvhIyhBM7xBrtvmLbV4zmeJAvr5Y-jrKo3RZS_pcTxZlQAiIIJ0GReMkPQKlOKUI1MEQ4xRY8cxEw0TTk27JxhX5nonmwkTTyuE_mW-679BiPCE66JW61rLS9cDErqU4QOdphOiTOzBRMf7K-PP17MjDiLdoTRgcE9sIdETvjUbQ2MlkI8QgHZxQHqBLTkVDbpaMM8tzv5_1_S14H9I0eQzBkAtM7Jio4GTiAKNxCOSQiZdrNmowDgaUGj10xuIj2mmQEUyAkTzClC4Xa1wP5GA8Q2qTiwlEAe-gpIMUEE7kD9JTcvpe_w_IHMUZItCIjyTQpuWfZuQO4oAQKHmFixoWj-OADkwERd6jivY8cwSIM_iDO0zsZADTwf_fPv_9-Hv__rH_5-359e0TTvLm94MbtyZDkONkcW6XeFlg6K693zNlaxEiwSgPOLPMToxn8PgAgEd01w7EwYRHoxajM10XuioqmWGdbzkv19tqzbOhrtpukyuu1lrrsuSlWuuyVJwXZcW7isvM1IKLIs-FyHkuBF-Vxa7b5DslC6zKSmzZmuMojV1Zexznuc1MCAnrbZFznlnZog0_V8TXc9BTm_rA1tyaEMM9LZposb6OqekdeQzgyD39biSz5G39y_aYOKR2pWhkopkL366nydMXqshEs8AFJpqF70cAAAD__wCHSCk">