Fix the issue that prevents compilation in C++11 environment #1251
+6
−3
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
issue #1247
Commit 302786e introduced a definition std::is_standard_layout_v that is only supported starting from C++17, which now prevents the LevelDB project from compiling in a C++11 environment.
This modification uses a C++11-compatible implementation, allowing compilation in a C++11 environment without changing the logic.
Replace std::is_standard_layout_v with std::is_standard_layout::value to ensure compatibility with C++11 compilers. This change affects:
This fix is needed for projects that are still using C++11 and cannot upgrade to C++17.
Although this change does not seem to have an impact on performance, some benchmark results are as follows:
1
2