diff options
Diffstat (limited to 'src')
| -rw-r--r-- | src/pk.h | 11 |
1 files changed, 6 insertions, 5 deletions
@@ -1,7 +1,7 @@ #ifndef PK_SINGLE_HEADER_FILE_H #define PK_SINGLE_HEADER_FILE_H /******************************************************************************* -* PK Single-Header-Library V0.6.0 +* PK Single-Header-Library V0.6.1 * * Author: Jonathan Bradley * Copyright: © 2024-2025 Jonathan Bradley @@ -291,7 +291,7 @@ * *******************************************************************************/ -#define PK_VERSION "0.6.0" +#define PK_VERSION "0.6.1" #ifdef PK_IMPL_ALL # ifndef PK_IMPL_MEM_TYPES @@ -478,8 +478,8 @@ return a; \ }; \ TypeName operator~(TypeName& a) { \ - a = static_cast<TypeName>(~static_cast<TypeName_T>(a)); \ - return a; \ + TypeName_T b{static_cast<TypeName_T>(a)}; \ + return TypeName{static_cast<TypeName_T>(~b)}; \ }; #define TypeSafeInt_H(TypeName, Type, Max) \ TypeSafeInt2_H(TypeName, Type, Max, PK_CONCAT(TypeName, _T), PK_CONCAT(TypeName, _MAX), PK_CONCAT(TypeName, _T_MAX)) @@ -563,7 +563,8 @@ return a; \ }; \ constexpr TypeName operator~(const TypeName& a) { \ - return static_cast<TypeName>(~static_cast<TypeName_T>(a)); \ + TypeName_T b{static_cast<TypeName_T>(a)}; \ + return TypeName{static_cast<TypeName_T>(~b)}; \ }; #define TypeSafeInt_constexpr(TypeName, Type, Max) \ TypeSafeInt2_H_constexpr(TypeName, Type, Max, PK_CONCAT(TypeName, _T), PK_CONCAT(TypeName, _MAX), PK_CONCAT(TypeName, _T_MAX)) |
