mirror of
https://github.com/BlackMATov/meta.hpp.git
synced 2025-12-15 03:45:30 +07:00
cleanup some warnings
This commit is contained in:
@@ -9,11 +9,12 @@ list(INSERT CMAKE_MODULE_PATH 0 "${CMAKE_CURRENT_SOURCE_DIR}/cmake")
|
|||||||
include(EnableASan)
|
include(EnableASan)
|
||||||
include(EnableGCov)
|
include(EnableGCov)
|
||||||
include(EnableUBSan)
|
include(EnableUBSan)
|
||||||
|
include(SetupTargets)
|
||||||
|
|
||||||
add_subdirectory(manuals)
|
add_subdirectory(manuals)
|
||||||
add_subdirectory(singles)
|
add_subdirectory(singles)
|
||||||
add_subdirectory(vendors)
|
|
||||||
add_subdirectory(untests)
|
add_subdirectory(untests)
|
||||||
|
add_subdirectory(vendors)
|
||||||
|
|
||||||
#
|
#
|
||||||
# install
|
# install
|
||||||
|
|||||||
32
develop/cmake/SetupTargets.cmake
Normal file
32
develop/cmake/SetupTargets.cmake
Normal file
@@ -0,0 +1,32 @@
|
|||||||
|
add_library(${PROJECT_NAME}.setup_targets INTERFACE)
|
||||||
|
add_library(${PROJECT_NAME}::setup_targets ALIAS ${PROJECT_NAME}.setup_targets)
|
||||||
|
|
||||||
|
target_link_libraries(${PROJECT_NAME}.setup_targets INTERFACE
|
||||||
|
doctest::doctest_with_main)
|
||||||
|
|
||||||
|
target_compile_options(${PROJECT_NAME}.setup_targets INTERFACE
|
||||||
|
$<$<CXX_COMPILER_ID:MSVC>:
|
||||||
|
/WX /W4>
|
||||||
|
$<$<CXX_COMPILER_ID:GNU>:
|
||||||
|
-Werror -Wall -Wextra -Wpedantic>
|
||||||
|
$<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>>:
|
||||||
|
-Werror -Weverything -Wconversion
|
||||||
|
-Wno-c++98-compat
|
||||||
|
-Wno-c++98-compat-pedantic
|
||||||
|
-Wno-exit-time-destructors
|
||||||
|
-Wno-global-constructors
|
||||||
|
-Wno-padded
|
||||||
|
-Wno-unneeded-member-function
|
||||||
|
-Wno-weak-vtables
|
||||||
|
>)
|
||||||
|
|
||||||
|
if(BUILD_WITH_COVERAGE)
|
||||||
|
target_link_libraries(${PROJECT_NAME}.setup_targets INTERFACE
|
||||||
|
meta.hpp::enable_gcov)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(BUILD_WITH_SANITIZERS)
|
||||||
|
target_link_libraries(${PROJECT_NAME}.setup_targets INTERFACE
|
||||||
|
meta.hpp::enable_asan
|
||||||
|
meta.hpp::enable_ubsan)
|
||||||
|
endif()
|
||||||
@@ -4,77 +4,15 @@ file(GLOB_RECURSE MANUALS_SOURCES "*.cpp" "*.hpp")
|
|||||||
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${MANUALS_SOURCES})
|
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${MANUALS_SOURCES})
|
||||||
|
|
||||||
add_executable(${PROJECT_NAME} ${MANUALS_SOURCES})
|
add_executable(${PROJECT_NAME} ${MANUALS_SOURCES})
|
||||||
target_link_libraries(${PROJECT_NAME} PRIVATE meta.hpp::meta.hpp)
|
|
||||||
|
|
||||||
add_executable(${PROJECT_NAME}.singles ${MANUALS_SOURCES})
|
add_executable(${PROJECT_NAME}.singles ${MANUALS_SOURCES})
|
||||||
target_link_libraries(${PROJECT_NAME}.singles PRIVATE meta.hpp::singles)
|
|
||||||
|
|
||||||
#
|
target_link_libraries(${PROJECT_NAME} PRIVATE
|
||||||
# setup defines
|
meta.hpp::meta.hpp
|
||||||
#
|
meta.hpp::setup_targets)
|
||||||
|
|
||||||
function(setup_defines_for_target TARGET)
|
target_link_libraries(${PROJECT_NAME}.singles PRIVATE
|
||||||
target_compile_definitions(${TARGET} PRIVATE
|
meta.hpp::singles
|
||||||
DOCTEST_CONFIG_INCLUDE_TYPE_TRAITS
|
meta.hpp::setup_targets)
|
||||||
DOCTEST_CONFIG_USE_STD_HEADERS)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
setup_defines_for_target(${PROJECT_NAME})
|
|
||||||
setup_defines_for_target(${PROJECT_NAME}.singles)
|
|
||||||
|
|
||||||
#
|
|
||||||
# setup libraries
|
|
||||||
#
|
|
||||||
|
|
||||||
function(setup_libraries_for_target TARGET)
|
|
||||||
target_link_libraries(${TARGET} PRIVATE doctest::doctest_with_main)
|
|
||||||
|
|
||||||
if(BUILD_WITH_COVERAGE)
|
|
||||||
target_link_libraries(${TARGET} PRIVATE meta.hpp::enable_gcov)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BUILD_WITH_SANITIZERS)
|
|
||||||
target_link_libraries(${TARGET} PRIVATE meta.hpp::enable_asan meta.hpp::enable_ubsan)
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
setup_libraries_for_target(${PROJECT_NAME})
|
|
||||||
setup_libraries_for_target(${PROJECT_NAME}.singles)
|
|
||||||
|
|
||||||
#
|
|
||||||
# setup warnings
|
|
||||||
#
|
|
||||||
|
|
||||||
function(setup_warnings_for_target TARGET)
|
|
||||||
target_compile_options(${TARGET}
|
|
||||||
PRIVATE
|
|
||||||
$<$<CXX_COMPILER_ID:MSVC>:
|
|
||||||
/WX /W4>
|
|
||||||
PRIVATE
|
|
||||||
$<$<CXX_COMPILER_ID:GNU>:
|
|
||||||
-Werror -Wall -Wextra -Wpedantic>
|
|
||||||
PRIVATE
|
|
||||||
$<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>>:
|
|
||||||
-Werror -Weverything -Wconversion
|
|
||||||
-Wno-c++98-compat
|
|
||||||
-Wno-c++98-compat-pedantic
|
|
||||||
-Wno-exit-time-destructors
|
|
||||||
-Wno-global-constructors
|
|
||||||
-Wno-padded
|
|
||||||
-Wno-unknown-warning-option
|
|
||||||
-Wno-unneeded-internal-declaration
|
|
||||||
-Wno-unneeded-member-function
|
|
||||||
-Wno-unused-macros
|
|
||||||
-Wno-weak-vtables
|
|
||||||
>)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
setup_warnings_for_target(${PROJECT_NAME})
|
|
||||||
setup_warnings_for_target(${PROJECT_NAME}.singles)
|
|
||||||
|
|
||||||
#
|
|
||||||
# add tests
|
|
||||||
#
|
|
||||||
|
|
||||||
add_test(${PROJECT_NAME} ${PROJECT_NAME})
|
add_test(${PROJECT_NAME} ${PROJECT_NAME})
|
||||||
add_test(${PROJECT_NAME} ${PROJECT_NAME}.singles)
|
add_test(${PROJECT_NAME} ${PROJECT_NAME}.singles)
|
||||||
|
|||||||
@@ -13,7 +13,8 @@ set(META_HPP_SINGLES_SCRIPT "${META_HPP_ROOT_DIR}/develop/singles/scripts/build_
|
|||||||
file(GLOB_RECURSE META_SINGLES_DEPENDS "${META_HPP_ROOT_DIR}/headers/*.hpp")
|
file(GLOB_RECURSE META_SINGLES_DEPENDS "${META_HPP_ROOT_DIR}/headers/*.hpp")
|
||||||
|
|
||||||
add_custom_command(OUTPUT "${META_HPP_SINGLES_OUTPUT}"
|
add_custom_command(OUTPUT "${META_HPP_SINGLES_OUTPUT}"
|
||||||
COMMAND "${Python3_EXECUTABLE}" "${META_HPP_SINGLES_SCRIPT}" "${META_HPP_SINGLES_INPUT}" "${META_HPP_SINGLES_OUTPUT}"
|
COMMAND "${Python3_EXECUTABLE}" "${META_HPP_SINGLES_SCRIPT}"
|
||||||
|
"${META_HPP_SINGLES_INPUT}" "${META_HPP_SINGLES_OUTPUT}"
|
||||||
DEPENDS ${META_SINGLES_DEPENDS}
|
DEPENDS ${META_SINGLES_DEPENDS}
|
||||||
WORKING_DIRECTORY "${META_HPP_ROOT_DIR}")
|
WORKING_DIRECTORY "${META_HPP_ROOT_DIR}")
|
||||||
|
|
||||||
@@ -27,7 +28,15 @@ add_custom_target(${PROJECT_NAME}.generate
|
|||||||
add_library(${PROJECT_NAME} INTERFACE)
|
add_library(${PROJECT_NAME} INTERFACE)
|
||||||
add_library(meta.hpp::singles ALIAS ${PROJECT_NAME})
|
add_library(meta.hpp::singles ALIAS ${PROJECT_NAME})
|
||||||
|
|
||||||
add_dependencies(${PROJECT_NAME} ${PROJECT_NAME}.generate)
|
add_dependencies(${PROJECT_NAME}
|
||||||
target_compile_features(${PROJECT_NAME} INTERFACE cxx_std_20)
|
${PROJECT_NAME}.generate)
|
||||||
target_include_directories(${PROJECT_NAME} INTERFACE headers)
|
|
||||||
|
target_compile_features(${PROJECT_NAME} INTERFACE
|
||||||
|
cxx_std_20)
|
||||||
|
|
||||||
|
target_include_directories(${PROJECT_NAME} INTERFACE
|
||||||
|
$<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/headers>
|
||||||
|
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>)
|
||||||
|
|
||||||
|
find_package(Threads REQUIRED)
|
||||||
target_link_libraries(${PROJECT_NAME} INTERFACE Threads::Threads)
|
target_link_libraries(${PROJECT_NAME} INTERFACE Threads::Threads)
|
||||||
|
|||||||
@@ -4879,6 +4879,7 @@ namespace meta_hpp::detail
|
|||||||
};
|
};
|
||||||
public:
|
public:
|
||||||
uarg_base() = delete;
|
uarg_base() = delete;
|
||||||
|
~uarg_base() = default;
|
||||||
|
|
||||||
uarg_base(uarg_base&&) = default;
|
uarg_base(uarg_base&&) = default;
|
||||||
uarg_base(const uarg_base&) = default;
|
uarg_base(const uarg_base&) = default;
|
||||||
@@ -4886,8 +4887,6 @@ namespace meta_hpp::detail
|
|||||||
uarg_base& operator=(uarg_base&&) = delete;
|
uarg_base& operator=(uarg_base&&) = delete;
|
||||||
uarg_base& operator=(const uarg_base&) = delete;
|
uarg_base& operator=(const uarg_base&) = delete;
|
||||||
|
|
||||||
virtual ~uarg_base() = default;
|
|
||||||
|
|
||||||
template < typename T >
|
template < typename T >
|
||||||
uarg_base(type_list<T>) = delete;
|
uarg_base(type_list<T>) = delete;
|
||||||
|
|
||||||
@@ -4953,6 +4952,7 @@ namespace meta_hpp::detail
|
|||||||
class uarg final : public uarg_base {
|
class uarg final : public uarg_base {
|
||||||
public:
|
public:
|
||||||
uarg() = delete;
|
uarg() = delete;
|
||||||
|
~uarg() = default;
|
||||||
|
|
||||||
uarg(uarg&&) = default;
|
uarg(uarg&&) = default;
|
||||||
uarg(const uarg&) = default;
|
uarg(const uarg&) = default;
|
||||||
@@ -4960,8 +4960,6 @@ namespace meta_hpp::detail
|
|||||||
uarg& operator=(uarg&&) = delete;
|
uarg& operator=(uarg&&) = delete;
|
||||||
uarg& operator=(const uarg&) = delete;
|
uarg& operator=(const uarg&) = delete;
|
||||||
|
|
||||||
~uarg() override = default;
|
|
||||||
|
|
||||||
template < typename T, uvalue_kind Tp = std::decay_t<T> >
|
template < typename T, uvalue_kind Tp = std::decay_t<T> >
|
||||||
// NOLINTNEXTLINE(*-forwarding-reference-overload)
|
// NOLINTNEXTLINE(*-forwarding-reference-overload)
|
||||||
explicit uarg(T&& v)
|
explicit uarg(T&& v)
|
||||||
@@ -6002,6 +6000,7 @@ namespace meta_hpp::detail
|
|||||||
};
|
};
|
||||||
public:
|
public:
|
||||||
uinst_base() = delete;
|
uinst_base() = delete;
|
||||||
|
~uinst_base() = default;
|
||||||
|
|
||||||
uinst_base(uinst_base&&) = default;
|
uinst_base(uinst_base&&) = default;
|
||||||
uinst_base(const uinst_base&) = default;
|
uinst_base(const uinst_base&) = default;
|
||||||
@@ -6009,8 +6008,6 @@ namespace meta_hpp::detail
|
|||||||
uinst_base& operator=(uinst_base&&) = delete;
|
uinst_base& operator=(uinst_base&&) = delete;
|
||||||
uinst_base& operator=(const uinst_base&) = delete;
|
uinst_base& operator=(const uinst_base&) = delete;
|
||||||
|
|
||||||
virtual ~uinst_base() = default;
|
|
||||||
|
|
||||||
template < typename T >
|
template < typename T >
|
||||||
uinst_base(type_list<T>) = delete;
|
uinst_base(type_list<T>) = delete;
|
||||||
|
|
||||||
@@ -6081,6 +6078,7 @@ namespace meta_hpp::detail
|
|||||||
class uinst final : public uinst_base {
|
class uinst final : public uinst_base {
|
||||||
public:
|
public:
|
||||||
uinst() = delete;
|
uinst() = delete;
|
||||||
|
~uinst() = default;
|
||||||
|
|
||||||
uinst(uinst&&) = default;
|
uinst(uinst&&) = default;
|
||||||
uinst(const uinst&) = default;
|
uinst(const uinst&) = default;
|
||||||
@@ -6088,8 +6086,6 @@ namespace meta_hpp::detail
|
|||||||
uinst& operator=(uinst&&) = delete;
|
uinst& operator=(uinst&&) = delete;
|
||||||
uinst& operator=(const uinst&) = delete;
|
uinst& operator=(const uinst&) = delete;
|
||||||
|
|
||||||
~uinst() override = default;
|
|
||||||
|
|
||||||
template < typename T, uvalue_kind Tp = std::decay_t<T> >
|
template < typename T, uvalue_kind Tp = std::decay_t<T> >
|
||||||
// NOLINTNEXTLINE(*-forwarding-reference-overload)
|
// NOLINTNEXTLINE(*-forwarding-reference-overload)
|
||||||
explicit uinst(T&& v)
|
explicit uinst(T&& v)
|
||||||
|
|||||||
@@ -4,77 +4,15 @@ file(GLOB_RECURSE UNTESTS_SOURCES "*.cpp" "*.hpp")
|
|||||||
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${UNTESTS_SOURCES})
|
source_group(TREE ${CMAKE_CURRENT_SOURCE_DIR} FILES ${UNTESTS_SOURCES})
|
||||||
|
|
||||||
add_executable(${PROJECT_NAME} ${UNTESTS_SOURCES})
|
add_executable(${PROJECT_NAME} ${UNTESTS_SOURCES})
|
||||||
target_link_libraries(${PROJECT_NAME} PRIVATE meta.hpp::meta.hpp)
|
|
||||||
|
|
||||||
add_executable(${PROJECT_NAME}.singles ${UNTESTS_SOURCES})
|
add_executable(${PROJECT_NAME}.singles ${UNTESTS_SOURCES})
|
||||||
target_link_libraries(${PROJECT_NAME}.singles PRIVATE meta.hpp::singles)
|
|
||||||
|
|
||||||
#
|
target_link_libraries(${PROJECT_NAME} PRIVATE
|
||||||
# setup defines
|
meta.hpp::meta.hpp
|
||||||
#
|
meta.hpp::setup_targets)
|
||||||
|
|
||||||
function(setup_defines_for_target TARGET)
|
target_link_libraries(${PROJECT_NAME}.singles PRIVATE
|
||||||
target_compile_definitions(${TARGET} PRIVATE
|
meta.hpp::singles
|
||||||
DOCTEST_CONFIG_INCLUDE_TYPE_TRAITS
|
meta.hpp::setup_targets)
|
||||||
DOCTEST_CONFIG_USE_STD_HEADERS)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
setup_defines_for_target(${PROJECT_NAME})
|
|
||||||
setup_defines_for_target(${PROJECT_NAME}.singles)
|
|
||||||
|
|
||||||
#
|
|
||||||
# setup libraries
|
|
||||||
#
|
|
||||||
|
|
||||||
function(setup_libraries_for_target TARGET)
|
|
||||||
target_link_libraries(${TARGET} PRIVATE doctest::doctest_with_main)
|
|
||||||
|
|
||||||
if(BUILD_WITH_COVERAGE)
|
|
||||||
target_link_libraries(${TARGET} PRIVATE meta.hpp::enable_gcov)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BUILD_WITH_SANITIZERS)
|
|
||||||
target_link_libraries(${TARGET} PRIVATE meta.hpp::enable_asan meta.hpp::enable_ubsan)
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
setup_libraries_for_target(${PROJECT_NAME})
|
|
||||||
setup_libraries_for_target(${PROJECT_NAME}.singles)
|
|
||||||
|
|
||||||
#
|
|
||||||
# setup warnings
|
|
||||||
#
|
|
||||||
|
|
||||||
function(setup_warnings_for_target TARGET)
|
|
||||||
target_compile_options(${TARGET}
|
|
||||||
PRIVATE
|
|
||||||
$<$<CXX_COMPILER_ID:MSVC>:
|
|
||||||
/WX /W4>
|
|
||||||
PRIVATE
|
|
||||||
$<$<CXX_COMPILER_ID:GNU>:
|
|
||||||
-Werror -Wall -Wextra -Wpedantic>
|
|
||||||
PRIVATE
|
|
||||||
$<$<OR:$<CXX_COMPILER_ID:Clang>,$<CXX_COMPILER_ID:AppleClang>>:
|
|
||||||
-Werror -Weverything -Wconversion
|
|
||||||
-Wno-c++98-compat
|
|
||||||
-Wno-c++98-compat-pedantic
|
|
||||||
-Wno-exit-time-destructors
|
|
||||||
-Wno-global-constructors
|
|
||||||
-Wno-padded
|
|
||||||
-Wno-unknown-warning-option
|
|
||||||
-Wno-unneeded-internal-declaration
|
|
||||||
-Wno-unneeded-member-function
|
|
||||||
-Wno-unused-macros
|
|
||||||
-Wno-weak-vtables
|
|
||||||
>)
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
setup_warnings_for_target(${PROJECT_NAME})
|
|
||||||
setup_warnings_for_target(${PROJECT_NAME}.singles)
|
|
||||||
|
|
||||||
#
|
|
||||||
# add tests
|
|
||||||
#
|
|
||||||
|
|
||||||
add_test(${PROJECT_NAME} ${PROJECT_NAME})
|
add_test(${PROJECT_NAME} ${PROJECT_NAME})
|
||||||
add_test(${PROJECT_NAME} ${PROJECT_NAME}.singles)
|
add_test(${PROJECT_NAME} ${PROJECT_NAME}.singles)
|
||||||
|
|||||||
@@ -14,8 +14,6 @@ namespace
|
|||||||
};
|
};
|
||||||
|
|
||||||
class clazz_opened_dtor {
|
class clazz_opened_dtor {
|
||||||
public:
|
|
||||||
~clazz_opened_dtor() = default;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
class clazz_virtual_dtor {
|
class clazz_virtual_dtor {
|
||||||
|
|||||||
4
develop/vendors/CMakeLists.txt
vendored
4
develop/vendors/CMakeLists.txt
vendored
@@ -1,5 +1,7 @@
|
|||||||
project(meta.hpp.vendors)
|
project(meta.hpp.vendors)
|
||||||
|
|
||||||
set(DOCTEST_NO_INSTALL ON CACHE INTERNAL "")
|
set(DOCTEST_NO_INSTALL ON CACHE INTERNAL "")
|
||||||
|
set(DOCTEST_USE_STD_HEADERS ON CACHE INTERNAL "")
|
||||||
|
|
||||||
add_subdirectory(doctest)
|
add_subdirectory(doctest)
|
||||||
set_target_properties(doctest_with_main PROPERTIES FOLDER meta.hpp.vendors)
|
set_target_properties(doctest doctest_with_main PROPERTIES FOLDER meta.hpp.vendors)
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ namespace meta_hpp::detail
|
|||||||
};
|
};
|
||||||
public:
|
public:
|
||||||
uarg_base() = delete;
|
uarg_base() = delete;
|
||||||
|
~uarg_base() = default;
|
||||||
|
|
||||||
uarg_base(uarg_base&&) = default;
|
uarg_base(uarg_base&&) = default;
|
||||||
uarg_base(const uarg_base&) = default;
|
uarg_base(const uarg_base&) = default;
|
||||||
@@ -31,8 +32,6 @@ namespace meta_hpp::detail
|
|||||||
uarg_base& operator=(uarg_base&&) = delete;
|
uarg_base& operator=(uarg_base&&) = delete;
|
||||||
uarg_base& operator=(const uarg_base&) = delete;
|
uarg_base& operator=(const uarg_base&) = delete;
|
||||||
|
|
||||||
virtual ~uarg_base() = default;
|
|
||||||
|
|
||||||
template < typename T >
|
template < typename T >
|
||||||
uarg_base(type_list<T>) = delete;
|
uarg_base(type_list<T>) = delete;
|
||||||
|
|
||||||
@@ -98,6 +97,7 @@ namespace meta_hpp::detail
|
|||||||
class uarg final : public uarg_base {
|
class uarg final : public uarg_base {
|
||||||
public:
|
public:
|
||||||
uarg() = delete;
|
uarg() = delete;
|
||||||
|
~uarg() = default;
|
||||||
|
|
||||||
uarg(uarg&&) = default;
|
uarg(uarg&&) = default;
|
||||||
uarg(const uarg&) = default;
|
uarg(const uarg&) = default;
|
||||||
@@ -105,8 +105,6 @@ namespace meta_hpp::detail
|
|||||||
uarg& operator=(uarg&&) = delete;
|
uarg& operator=(uarg&&) = delete;
|
||||||
uarg& operator=(const uarg&) = delete;
|
uarg& operator=(const uarg&) = delete;
|
||||||
|
|
||||||
~uarg() override = default;
|
|
||||||
|
|
||||||
template < typename T, uvalue_kind Tp = std::decay_t<T> >
|
template < typename T, uvalue_kind Tp = std::decay_t<T> >
|
||||||
// NOLINTNEXTLINE(*-forwarding-reference-overload)
|
// NOLINTNEXTLINE(*-forwarding-reference-overload)
|
||||||
explicit uarg(T&& v)
|
explicit uarg(T&& v)
|
||||||
|
|||||||
@@ -24,6 +24,7 @@ namespace meta_hpp::detail
|
|||||||
};
|
};
|
||||||
public:
|
public:
|
||||||
uinst_base() = delete;
|
uinst_base() = delete;
|
||||||
|
~uinst_base() = default;
|
||||||
|
|
||||||
uinst_base(uinst_base&&) = default;
|
uinst_base(uinst_base&&) = default;
|
||||||
uinst_base(const uinst_base&) = default;
|
uinst_base(const uinst_base&) = default;
|
||||||
@@ -31,8 +32,6 @@ namespace meta_hpp::detail
|
|||||||
uinst_base& operator=(uinst_base&&) = delete;
|
uinst_base& operator=(uinst_base&&) = delete;
|
||||||
uinst_base& operator=(const uinst_base&) = delete;
|
uinst_base& operator=(const uinst_base&) = delete;
|
||||||
|
|
||||||
virtual ~uinst_base() = default;
|
|
||||||
|
|
||||||
template < typename T >
|
template < typename T >
|
||||||
uinst_base(type_list<T>) = delete;
|
uinst_base(type_list<T>) = delete;
|
||||||
|
|
||||||
@@ -103,6 +102,7 @@ namespace meta_hpp::detail
|
|||||||
class uinst final : public uinst_base {
|
class uinst final : public uinst_base {
|
||||||
public:
|
public:
|
||||||
uinst() = delete;
|
uinst() = delete;
|
||||||
|
~uinst() = default;
|
||||||
|
|
||||||
uinst(uinst&&) = default;
|
uinst(uinst&&) = default;
|
||||||
uinst(const uinst&) = default;
|
uinst(const uinst&) = default;
|
||||||
@@ -110,8 +110,6 @@ namespace meta_hpp::detail
|
|||||||
uinst& operator=(uinst&&) = delete;
|
uinst& operator=(uinst&&) = delete;
|
||||||
uinst& operator=(const uinst&) = delete;
|
uinst& operator=(const uinst&) = delete;
|
||||||
|
|
||||||
~uinst() override = default;
|
|
||||||
|
|
||||||
template < typename T, uvalue_kind Tp = std::decay_t<T> >
|
template < typename T, uvalue_kind Tp = std::decay_t<T> >
|
||||||
// NOLINTNEXTLINE(*-forwarding-reference-overload)
|
// NOLINTNEXTLINE(*-forwarding-reference-overload)
|
||||||
explicit uinst(T&& v)
|
explicit uinst(T&& v)
|
||||||
|
|||||||
Reference in New Issue
Block a user