summaryrefslogtreecommitdiffstats
path: root/juniper
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2020-12-02 17:55:35 +0000
committerHenning Baldersheim <balder@yahoo-inc.com>2020-12-02 17:55:35 +0000
commit25f34eebb0f3eb31e327f1a64d18db2817c6d694 (patch)
tree3717703d31af200669c60510dd5a0612279c3bb4 /juniper
parent4a7fe355da8efddec055943d7770619efe80cb03 (diff)
c++17 and c++2a need different handling.
Diffstat (limited to 'juniper')
-rw-r--r--juniper/src/test/auxTest.cpp25
1 files changed, 16 insertions, 9 deletions
diff --git a/juniper/src/test/auxTest.cpp b/juniper/src/test/auxTest.cpp
index 02697fd96ba..62bed396d44 100644
--- a/juniper/src/test/auxTest.cpp
+++ b/juniper/src/test/auxTest.cpp
@@ -320,16 +320,23 @@ void test_dump(const char* s, unsigned int len)
namespace {
+#if __cplusplus > 201703L
const char *
-bad_cast_from_u8(const char8_t * p) {
+char_from_u8(const char8_t * p) {
return reinterpret_cast<const char *>(p);
}
+#else
+const char *
+char_from_u8(const char * p) {
+ return p;
+}
+#endif
}
void AuxTest::TestUTF8(unsigned int size)
{
- const char* s = bad_cast_from_u8(u8"\u00e5pent s\u00f8k\u00e6\u00f8\u00e5\u00e6\u00f8\u00e5\u00e6\u00f8\u00e5");
+ const char* s = char_from_u8(u8"\u00e5pent s\u00f8k\u00e6\u00f8\u00e5\u00e6\u00f8\u00e5\u00e6\u00f8\u00e5");
const unsigned char* p = (const unsigned char*)s;
int moved = 0;
@@ -386,20 +393,20 @@ void AuxTest::TestUTF8(unsigned int size)
void AuxTest::TestUTF8context()
{
- const char* iso_cont = bad_cast_from_u8(u8"AND(m\u00b5ss,fast,s\u00f8kemotor,\u00e5relang)");
+ const char* iso_cont = char_from_u8(u8"AND(m\u00b5ss,fast,s\u00f8kemotor,\u00e5relang)");
juniper::QueryParser q(iso_cont);
juniper::QueryHandle qh(q, NULL, juniper::_Juniper->getModifier());
// some content
- std::string s(bad_cast_from_u8(u8"Fast leverer s\u00d8kemotorer og andre nyttige ting for \u00e5 finne frem p\u00e5 "));
- s.append(bad_cast_from_u8(u8"internett. Teknologien er basert p\u00e5 \u00c5relang"));
+ std::string s(char_from_u8(u8"Fast leverer s\u00d8kemotorer og andre nyttige ting for \u00e5 finne frem p\u00e5 "));
+ s.append(char_from_u8(u8"internett. Teknologien er basert p\u00e5 \u00c5relang"));
s += UNIT_SEPARATOR;
- s.append(bad_cast_from_u8(u8"norsk innsats og forskning i"));
+ s.append(char_from_u8(u8"norsk innsats og forskning i"));
s += GROUP_SEPARATOR;
- s.append(bad_cast_from_u8(u8"trondheimsmilj\u00f8et. M\u00b5ss med denne nye funksjonaliteten for \u00e5 vise frem"));
+ s.append(char_from_u8(u8"trondheimsmilj\u00f8et. M\u00b5ss med denne nye funksjonaliteten for \u00e5 vise frem"));
s += UNIT_SEPARATOR;
- s.append(bad_cast_from_u8(u8" beste forekomst av s\u00f8ket med s\u00f8kemotor til brukeren blir det enda bedre. "));
- s.append(bad_cast_from_u8(u8"Hvis bare UTF8-kodingen virker som den skal for tegn som tar mer enn \u00e9n byte."));
+ s.append(char_from_u8(u8" beste forekomst av s\u00f8ket med s\u00f8kemotor til brukeren blir det enda bedre. "));
+ s.append(char_from_u8(u8"Hvis bare UTF8-kodingen virker som den skal for tegn som tar mer enn \u00e9n byte."));
juniper::Result* res = juniper::Analyse(juniper::TestConfig, &qh, s.c_str(), s.size(), 0, 0, 0);
_test(res != NULL);