summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/pk.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/pk.h b/src/pk.h
index 1c4b945..42c144b 100644
--- a/src/pk.h
+++ b/src/pk.h
@@ -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))