summaryrefslogtreecommitdiffhomepage
path: root/include/stc/priv
diff options
context:
space:
mode:
authortylov <[email protected]>2023-07-10 10:53:30 +0200
committertylov <[email protected]>2023-07-10 10:53:30 +0200
commit6fe1ec0e0e3dbce71797873f71a5f306b046319f (patch)
tree329869548de3cc19c4137f4632761af3fa8756da /include/stc/priv
parentbe5864d5f658d544ad5c2af9f1c5b37b4d96bde8 (diff)
downloadSTC-modified-6fe1ec0e0e3dbce71797873f71a5f306b046319f.tar.gz
STC-modified-6fe1ec0e0e3dbce71797873f71a5f306b046319f.zip
- Fixed meta-programming bug in carc and cbox hash function def (regression).
- Reverted to allow static linking of cstr and csview. Still defaults to shared linking + inlines.
Diffstat (limited to 'include/stc/priv')
-rw-r--r--include/stc/priv/template.h9
1 files changed, 6 insertions, 3 deletions
diff --git a/include/stc/priv/template.h b/include/stc/priv/template.h
index 03c27bdb..7138a87c 100644
--- a/include/stc/priv/template.h
+++ b/include/stc/priv/template.h
@@ -102,6 +102,9 @@
#if c_option(c_no_emplace)
#define i_no_emplace
#endif
+#if c_option(c_native_cmp)
+ #define i_native_cmp
+#endif
#if defined i_key_str
#define i_keyclass cstr
@@ -194,10 +197,10 @@
#endif
#ifndef i_no_cmp
- #if c_option(c_native_cmp) || defined i_native_cmp || defined i_cmp || defined i_less
+ #if defined i_cmp || defined i_less || defined i_native_cmp
#define _i_has_cmp
#endif
- #if defined i_eq
+ #if defined i_eq || defined i_native_cmp
#define _i_has_eq
#endif
@@ -219,7 +222,7 @@
#endif
#endif
-#if !(defined i_hash || defined _i_cbox || defined _i_carc)
+#if !defined i_hash && (!(defined _i_cbox || defined _i_carc) || defined i_native_cmp)
#define i_hash c_default_hash
#endif