diff options
Diffstat (limited to 'libcxx/modules/std/new.cppm')
| -rw-r--r-- | libcxx/modules/std/new.cppm | 46 | 
1 files changed, 46 insertions, 0 deletions
diff --git a/libcxx/modules/std/new.cppm b/libcxx/modules/std/new.cppm new file mode 100644 index 000000000000..bc8eb700d445 --- /dev/null +++ b/libcxx/modules/std/new.cppm @@ -0,0 +1,46 @@ +// -*- C++ -*- +//===----------------------------------------------------------------------===// +// +// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. +// See https://llvm.org/LICENSE.txt for license information. +// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception +// +//===----------------------------------------------------------------------===// + +module; +#include <new> + +export module std:__new; // Note new is a keyword and not a valid identifier +export namespace std { +  // [alloc.errors], storage allocation errors +  using std::bad_alloc; +  using std::bad_array_new_length; + +  using std::destroying_delete; +  using std::destroying_delete_t; + +  // global operator new control +  using std::align_val_t; + +  using std::nothrow; +  using std::nothrow_t; + +  using std::get_new_handler; +  using std::new_handler; +  using std::set_new_handler; + +  // [ptr.launder], pointer optimization barrier +  using std::launder; +#if 0 +  // [hardware.interference], hardware interference size +  using std::hardware_constructive_interference_size; +  using std::hardware_destructive_interference_size; +#endif +} // namespace std + +export { +  using ::operator new; +  using ::operator delete; +  using ::operator new[]; +  using ::operator delete[]; +} // export  | 
