Skip to content

Commit 3c3315e

Browse files
committed
Revert removing type traits assertions
1 parent 720157b commit 3c3315e

File tree

1 file changed

+11
-4
lines changed

1 file changed

+11
-4
lines changed

src/file.cpp

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,27 +4,34 @@
44

55
#include <tmp/file>
66

7-
#include <fcntl.h>
7+
#include <cstdio>
88
#include <filesystem>
99
#include <ios>
10-
#include <istream>
1110
#include <system_error>
12-
#include <utility>
11+
#include <type_traits>
1312

1413
#ifdef __GLIBCXX__
1514
#include <ext/stdio_filebuf.h>
1615
#endif
1716

1817
#ifdef _WIN32
1918
#include <Windows.h>
20-
#include <corecrt_io.h>
19+
#include <io.h>
2120
#endif
2221

2322
namespace tmp {
2423
namespace {
2524

2625
namespace fs = std::filesystem;
2726

27+
// Confirm that native_handle_type matches `TriviallyCopyable` named requirement
28+
static_assert(std::is_trivially_copyable_v<file::native_handle_type>);
29+
30+
#ifdef _WIN32
31+
// Confirm that `HANDLE` is as implemented in `file`
32+
static_assert(std::is_same_v<HANDLE, file::native_handle_type>);
33+
#endif
34+
2835
#ifndef _MSC_VER
2936
/// Open mode for binary temporary files
3037
constexpr auto mode = std::ios::binary | std::ios::in | std::ios::out;

0 commit comments

Comments
 (0)