<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=http://email.email.llvm.org/c/eJzVV01v4zYQ_TXKhbBBkZIoHnxwkk2bQ5MiyR56MihyZGtXFgVKSuz--g4pO7bjpNhtt0UbEJJFcoZvvh4nhTXb2QNoaPp6SyKWd1WjgShnh8aQmPYrcmefYV2Ai5gk6y2ZG-Og6x5VU_XV7-BIMVS16UjXK9eDIaWq6qpZkpcKZVVdWz0xML7XVbdWvV6RqiF1VeiIXeIgCk86fKqiivg8otcRnUcZ3Y3xk1__78eRIXHCEy7y8ePTw8P9Axp-5l8_94EbMVy2Bad660gDL-S5I6UD8IGyDaGbjCZ0_JM7DxL8ixinuJhIgIL5UHgZrytiNyu7RvGbL3pl3VeLv3roenypqR3wfbkX80egxKUP_a3xEGUcM6ZiKjNIZJbLPCt1KkGVKi5FUoDi2rCyKFHyBEqMUESZiQJkJmhqPKCu9ypxONUsYQHOWTdOROLT8ZzHLHfQMYPwucmzRZZMMAOHzWTZDOPCIbWmnZ3GwRCW4mnndoAWKadlAsLwgieJirNUsCLNkpxSnQspuMlNAm_tYEd2yCTl3o7FQm_UAhqz0Pt4_RWgAtX9OKDcx95oKjIPca3w8c2xD2I_LvbJq89SUyLw0WfeDYvAJosjdH_qNe-sbHRWjnrOEbIiyZmUIo_TJNey0EnKQOnMlFxKytJE6DxPwLxFmHpnxYbnIS9HVN_uriD4A9w1Pk_rmVQdQTJQnnIpKbZ4OkLsKgPEloQnEz9FHCwrpIIovXzDBuzqeCIU9HhKoJigtdiSfuVAGfJEyQocvNLyMYsY9GpwzjETob0DYlk2qKa2zfJQpd-SZF7jP0IwJpW8PCWYoemr9QnFnE6xXK-UI9o2Hub8u-jmUMJJiQefm1SUOQhaUskzluRSsjKTmY4hjWMBXCYFpyxh_Cwr2X-3bsbn4-dffpk__Pb919m_dQXtr70Pr-Ofb--evM6qJFs7EGObiImeaOWwOSoQCdYGdEBClnRhz1ptSQc9mT_O7xb3vz7d3t89oqZg5GJn7GJvLC7QDw-fX94_PN3e_fR-ExSeTyusfxywUeu2BkxQLPx-pRCXq5ZLQExVf95HXY2ZuZtlHJu9ekDJiF9hTcBGQ4tSn95b17ihsofF8KyaPlwh-5tYXO4TtXfb40_iucS-fFR5XhyvPUOeVT1g-AMf8VfpSFyT1ys01OKHijICb5AQ0jrEWY6HRCztovSqCT-vCExf0Gkj_LMzjy0lyKX94LCtet1z2PFehK7suq1qJEDf3iLI0BAfR0TXyjNjaIEnZWMndl31k9KpNUxai4ixt56gmb6C-fVRvzwpu101-fQa64v4KpnqtkUPZd4L09eSeReW8570yLR1KN_axvim_XDK236EtEp_VUvovHefMb_wXvmoT_9cYEwGEgzc7yVxMqVTOhkVMsqwWOMkptjbCJxIBGBDk0swUk9ibPNg0_rX0caM02mciV3-K7cEn-BkR22tPmK3XYmEy2uNlVH7ja3tqs24dIsZhPUI5roKhITGDh0mz02BqXxq0YWZcSO5VBdq6JGSZluFzGTdxeDq2arv2857gd3gWGKAh2Kq7do7r37evyats19AexKrum7wLrxJmRDxxWqWQaFVKfI8LRilqVIpK5WELOY0LzLOLmpVQN3N8AbHjPVNflDhsze9vvj7CKrZzsMijpM0lVOVpTovKAhBuRJxGiUUsMLrqdcztW554WZBZTEsO1ysq67vDouqC9c-BMCIsK_6GmZn_zOGYiUvK2jI0J0mHvKyXRPV9gelAfMsAP4Dvh0yxA>52771</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            AddressSanitizer error when using libc++ from apt.llvm.org
        </td>
    </tr>

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

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

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

<pre>
    Recently (since around 10th November) my AddressSanitizer builds started failing with alloc-dealloc-mismatch in libc++ and libc++abi:
```
=================================================================
==1434378==ERROR: AddressSanitizer: alloc-dealloc-mismatch (operator new vs free) on 0x604000000090
    #0 0x49eeb2 in free (/home/jchorko/test/a.out+0x49eeb2) (BuildId: 91122a1096e4968986fc59eafa1f74bea3cd2fbf)
    #1 0x7f67be96705d in std::range_error::~range_error() (/lib/x86_64-linux-gnu/libc++abi.so.1+0x2505d) (BuildId: ec7530f4e7d3b344a16572b564800c87973d8d4e)
    #2 0x7f67be969453 in __cxa_end_catch (/lib/x86_64-linux-gnu/libc++abi.so.1+0x27453) (BuildId: ec7530f4e7d3b344a16572b564800c87973d8d4e)
    #3 0x4dc076 in main (/home/jchorko/test/a.out+0x4dc076) (BuildId: 91122a1096e4968986fc59eafa1f74bea3cd2fbf)
    #4 0x7f67be5df564 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x28564) (BuildId: 2b48299781548c9bc452eac6df39902547c884ed)
    #5 0x41d38d in _start (/home/jchorko/test/a.out+0x41d38d) (BuildId: 91122a1096e4968986fc59eafa1f74bea3cd2fbf)

0x604000000090 is located 0 bytes inside of 34-byte region [0x604000000090,0x6040000000b2)
allocated by thread T0 here:
    #0 0x4d997d in operator new(unsigned long) (/home/jchorko/test/a.out+0x4d997d) (BuildId: 91122a1096e4968986fc59eafa1f74bea3cd2fbf)
    #1 0x7f67be9d593f in std::runtime_error::runtime_error(char const*) (/lib/x86_64-linux-gnu/libc++.so.1+0x4f93f) (BuildId: bf8e70f0936248992f696c1e5117e394b302423d)
    #2 0x7f67be5df564 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x28564) (BuildId: 2b48299781548c9bc452eac6df39902547c884ed)

SUMMARY: AddressSanitizer: alloc-dealloc-mismatch (/home/jchorko/test/a.out+0x49eeb2) (BuildId: 91122a1096e4968986fc59eafa1f74bea3cd2fbf) in free
==1434378==HINT: if you don't care about these errors you may set ASAN_OPTIONS=alloc_dealloc_mismatch=0
==1434378==ABORTING
```

This is example code that triggers it:
```C++
#include <stdexcept>
#include <cstdio>

int main() {
  try {
    throw std::runtime_error("Bad value");
  } catch (const std::runtime_error& e) {
    printf("%s\n", e.what());
  }

  return 0;
}
```

Compiled and run with:
`clang++ -fno-omit-frame-pointer -stdlib=libc++ -fsanitize=address test.cpp && ./a.out`

Compiler (and corresponding libc++/libc++abi packages) version:
```
Ubuntu clang version 14.0.0-++20211214104537+47eec789ed9c-1~exp1~20211214104630.167
Target: x86_64-pc-linux-gnu
Thread model: posix
InstalledDir: /usr/bin
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzVV1Fz4yYQ_jXKC2OPBEiIBz84yaXNwyWdJPfQJw-Cla07SWiQlNj99V2QEztx0rnrXDuthxEWsMu3y-7HqrBmt7gDDe1Q70hE875qNRDl7NgaksTDhtzYR2gKcBGVpNmRpTEO-v5etdVQ_QGOFGNVm570g3IDGFKqqq7aNXmqUFbVtdUzA1PfVH2jBr0hVUvqqtARPcdGFO50eFVFFbFlFF9G8TLK4n2bXtnl_74dGZJwxpnIp5dPd3e3d2j4iX_92AduxOOyHTg1WEdaeCKPPSkdgD8o25J4m8U8nn5y70GCv4iyGCe5BCioPwov43VF9GpjGxS_-qo31n2z-G-AfsBOze2I_fmzmN8CJc790V8bD1EmCaUqiWUGXGa5zLNSpxJUqZJS8AIU04aWRYmSr6AkCEWUmShAZiJOjQfUD14lNqfaNazAOeumgUh8Oh7zmOUeOkYQPrd5tsr4DCNw3M7W7ThNHEJr3tt5EgyhKe52agdokbK45CAMKxjnKslSQYs043kc61xIwUxuOLy1gx7ZIXnKvB2rld6qFbRmpZ_P6-8AFaju5wFl_uyNjkXmITYKH9999kHs5509f_FZakoEPvnMu2EV2GR1hO4vveadlU3OylHPKUJa8JxKKfIk5bmWheYpBaUzUzIpY5pyofOcg3mLMPXOSgzLQ1xOqL7fXUHwJ7hrer7OZ1L1BMlAecqNSbHD3RFiXxkgtiSMz_wQcbCukAqi9PwNG9CL44GQ0NMugWKC1mJHho0DZchDTDbg4IWWj1nEoFeDc46ZCO0dEcu6RTW1bdeHLP2eIPMa_xGCMalk5WuCGduhal5RzOshmuuNckTb1sNc_hDdHFKYl7jxqUlFmYOIy1iyjPJcSlpmMtMJpEkigElesJhyyk6ikv5382Z63n_5_Hl59_uPX2f_1hX0fO19eB3_en3z4HVWJdnZkRjbRlQMRCuHxVGBSDA3oAcSoqQPaxq1Iz0MZHm_vFnd_vZwfXtzj5qCkau9satnY3Ei_nDz5fnt3cP1zS_vF0Hh-bDB_McGW9V0NWCAYuIPG4W4XLVeA2KqhtM66mKKzP0oZVjs1SNKRuwCcwK2GjqU-vTevMYFlT1MhmfVDuEKeb6JxflzoA5ud_xKPJfYp48yz4vjtWfIo6pHPP7AR-xFOhKX5OUKDbn4oaKMwBskhHQOcZbTJhFN-yi9aMPfCwLzJ3TaBP9kz2NLCXLpMDosq17WHFa8d0IXtumqGgnQl7cIMhTExyeia-WZMZTAs7K1M9tUw6x0qoFZZxEx1tYzNNNnMLs8qpdnZb_PJh9eU34RnyVz3XXoocx7Yf6SMu_Cct6THpm2DuU72xpftB92eVuPkE7pb2oNvffuI8YX3isf1elfCjyTkQQDn9eShM_jeTybFNKYYrImPImxthE4wAVgQZNLMFLPEizzYNv57mhhxuJ5kol9_Cu3Bh_gZE9tnT5it32KhMurwcyo_cLO9tV2mrrGCMJ8BHNZBUJCY8ceg-eqwFB-bdGZWTAjmVRnQzXUsDj5_AlxR5420JKxf-1DpBjbENUN87p-bObWrc9GVy82w9D13nf0Ctsaw2Is5to23uW4bt_NOme_gvbUV_X96B1_lVIhkrPNQiQJSCUFVcyYVMSaA4Msz3LsjEnkWa0KqPsF3vsY5_7TIKjwMZ9enlWLvVdRDU9TOVdZqvMiBiFipkSSRjwGzOr6ANstAqRiXPc4WVf90B8mVR-uegjboX41Dsjdi51CCrfuLGy9CND_BMiRHWc">