[libcxx-commits] [PATCH] D144994: [Draft][libc++][modules] Adds std module.
Louis Dionne via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Fri Mar 17 11:28:17 PDT 2023
ldionne added inline comments.
================
Comment at: libcxx/test/libcxx/language.support/support.types/cstddef.compile.pass.cpp:1
//===----------------------------------------------------------------------===//
//
----------------
IMO it would make sense to split this test like this:
```
/////////////////////////////////////////////////////////////////////////////
// cstddef.compile.pass.cpp
#include <cstddef>
#include "test_macros.h"
using PtrdiffT = ::ptrdiff_t;
using SizeT = ::size_t;
#if TEST_STD_VER >= 11
using MaxAlignT = ::max_align_t;
#endif
// Supported in C++03 mode too for backwards compatibility with previous versions of libc++
using NullptrT = ::nullptr_t;
// Also ensure that we provide std::nullptr_t in C++03 mode, which is an extension too.
using StdNullptrT = std::nullptr_t;
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// cstddef.std.module.verify.cpp
// REQUIRES: modules-build (????)
import std;
#include "test_macros.h"
using PtrdiffT = ::ptrdiff_t; // expected-error {{no ptrdiff_t in global namespace}}
using SizeT = ::size_t; // expected-error {{no size_t in global namespace}}
[ etc... ]
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
// cstddef.stdcompat.module.compile.pass.cpp
import std.compat;
#include "test_macros.h"
using PtrdiffT = ::ptrdiff_t;
using SizeT = ::size_t;
[ etc... ]
/////////////////////////////////////////////////////////////////////////////
```
This one would be split up manually since it is extremely relevant to test this with C++23 modules.
However, many other tests are not as useful to test with/without modules. As we discussed, we could perhaps run `use_modules_in_test.py` on the fly to create a modularized version of the test that we wouldn't check into source control.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D144994/new/
https://reviews.llvm.org/D144994
More information about the libcxx-commits
mailing list