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

    <tr>
        <th>Summary</th>
        <td>
            building wasm32-unknown-wasi fails with `error: definition of type '__mbstate_t' conflicts with typedef of the same name`
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            libc++,
            build-problem
      </td>
    </tr>

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

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

<pre>
    On Ubuntu Kinetic:
```

/build/source/build-llvm/tools/clang/stage2-bins/bin/clang++ --target=wasm32-unknown-wasi -DLIBCXX_BUILDING_LIBCXXABI -D_LIBCPP_BUILDING_LIBRARY -D_LIBCPP_DISABLE_NEW_DELETE_DEFINITIONS -D_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER -D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/build/source/libcxx/src -I/build/source/build-wasm/libcxx-wasm32-wasi/include/c++/v1 -I/build/source/libcxxabi/include -O2 -DNDEBUG -g1 -fstack-protector-strong -Wformat -Werror=format-security -Wno-unused-command-line-argument -Wdate-time -D_FORTIFY_SOURCE=2 -fno-stack-protector -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wdelete-non-virtual-dtor -Wno-comment -fdiagnostics-color -std=c++20 -MD -MT libcxx/src/CMakeFiles/cxx_static.dir/random_shuffle.cpp.o -MF libcxx/src/CMakeFiles/cxx_static.dir/random_shuffle.cpp.o.d -o libcxx/src/CMakeFiles/cxx_static.dir/random_shuffle.cpp.o -c /build/source/libcxx/src/random_shuffle.cpp
In file included from /build/source/libcxx/src/random_shuffle.cpp:10:
In file included from /build/source/build-wasm/libcxx-wasm32-wasi/include/c++/v1/random:1709:
In file included from /build/source/build-wasm/libcxx-wasm32-wasi/include/c++/v1/__random/random_device.h:13:
In file included from /build/source/build-wasm/libcxx-wasm32-wasi/include/c++/v1/string:562:
In file included from /build/source/build-wasm/libcxx-wasm32-wasi/include/c++/v1/__string/char_traits.h:29:
In file included from /build/source/build-wasm/libcxx-wasm32-wasi/include/c++/v1/cwchar:110:
In file included from /build/source/build-wasm/libcxx-wasm32-wasi/include/c++/v1/wchar.h:124:
In file included from /usr/include/wasm32-wasi/wchar.h:33:
/usr/include/wasm32-wasi/bits/alltypes.h:378:16: error: definition of type '__mbstate_t' conflicts with typedef of the same name
typedef struct __mbstate_t { unsigned __opaque1, __opaque2; } mbstate_t;
               ^
/usr/include/bits/types/__mbstate_t.h:21:3: note: '__mbstate_t' declared here
} __mbstate_t;
  ^
```
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy8Vl-T4qgX_TT4QmElpKPtgw_RJDOpX6tTak_PPKUIkMhvCDhA-s-33yKxW3tnZntrdrctS4vLveceDgcKYq1oFOdzEC9AnI5I5w7azO2TvOfWGT6qNHuabxS8rTrlOvg_obgTFEQJCFIQJGASnL7DcPjFedUJyQDOre4M5c8BJOV9C3DutJYW4JxKohqf5UjDMaqE8tFKqPPcAuAFRMgR03AHovSB2DbCqFPflH5Q6IFYAVF6UyyWX76Ui9viJi3WH8phnCwKiNJ-8OnTq8ltsv16MZUWu2Rxk5Xr7K5Ms5tsn5VplhfrYl9s1ruLxI_Jrlxvyk_b5MMqKXdfd_tsVX7MkjTbXmRts9Xmc1but8l6V-yLz1lZrJc3t2nWQ5W7fbosl5v1bp-s9-UqWW43FxP5ZrtKfgzfFKviHC1-JrEUFX189BFDf5Ey7ILX8CUfnRT1SgKcC0Vlx3wuHcQHOL8P_7IjqS4KIdpgiNJ1mi1uP0DUhBDV1hH6DR2Ndpw6bZB1RqsGortam5Y4iO64MdqAKB0CyHLaGeGeILpTGnWqs5whqtuWKIakUBwR03QtV76WEceREy33YuWb7b7Iv5a7ze12mYEoxRDVSqM_UYDojkjpGz86Q161ORJDWu64z3kwwnFPV6jGQnRHiXXoe0d8JeOSO46UVuheGNcRidiArHTPtWdXM0Eapa0T1CKqpU-wjoEoPcmLA4hWKUSrPbzcP4Dz5Yp847mQvD8pj4-ldcQJOmbCAJwbophuS3vo6lryMT0exxqiVf7PUcYMIv1vkKHwLZf-tHS4QwoFayE5PNmKwdro9jcBoyQMXm6svw_8u4flhYRvPA1m79u6LE_NX6Rg_F5QPj54OtH7khmODoiSeILfW4ZTb5zTAzGlM0Q424uA33lH6INn4NV_bxv2jYeNx1dvt-6seYX2ussZLDq76M2qSjh_ZRAp3dORDxsQTa89pQmIEni6-RPIeC2UcEIrqGvokyHA07JsK3_V8NIBPIVUq1oK6ix8EO7QZzFe9wUHDi1pOVSk5QO351nrTEcdvICCYLqAneqfPgyWpT6S7x0PAV6-DDCIFhBMU3juHy0GXPj6A-Lsl1qcVt8vvTflC9rgxNCr4VevtOP-_8clM04lMZzBAzenhXlal1lnYmcuz--yEZtHbBbNyIjPw8l1FIaT2WQ6OsxnYRwEsyrA4YTNJjULZ9fXs-trNq1IEGMWj8QcBzgK4iAKMZ6F0zGm06i6imfTmFQVu4rBVcBbIuTYv-rG2jQjYW3H5xMc42gkScWl7d-VGHvbPlsTA7wEGA-2PhpdSd76aJyOzNxDoaprLLgKpLDOnsGdcJLP-zKhGvizh2BNhDxZA0yC_8Zak2DUGTk_OHe0_hjgHOC8Ee7QVWPaX7unR26_lKPR_-fUeVN4bbwJenn-CAAA__-Q17Oo">