Date: Sun, 17 Jun 2018 19:06:51 +0000 (UTC) From: Tobias Kortkamp <tobik@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r472627 - in head/databases/dbtool: . files Message-ID: <201806171906.w5HJ6ppI074952@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: tobik Date: Sun Jun 17 19:06:51 2018 New Revision: 472627 URL: https://svnweb.freebsd.org/changeset/ports/472627 Log: databases/dbtool: Unbreak with Clang 6 engine.cc:539:46: error: non-constant-expression cannot be narrowed from type 'std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> >::size_type' (aka 'unsigned long') to 'int' in initializer list [-Wc++11-narrowing] datum key = {(char *)config.key.c_str(), config.key.length()}; ^~~~~~~~~~~~~~~~~~~ engine.cc:539:46: note: insert an explicit cast to silence this issue datum key = {(char *)config.key.c_str(), config.key.length()}; ^~~~~~~~~~~~~~~~~~~ static_cast<int>( ) http://beefy12.nyi.freebsd.org/data/head-amd64-default/p472224_s334983/logs/dbtool-1.9.1.log Added: head/databases/dbtool/files/ head/databases/dbtool/files/patch-engine.cc (contents, props changed) Modified: head/databases/dbtool/Makefile Modified: head/databases/dbtool/Makefile ============================================================================== --- head/databases/dbtool/Makefile Sun Jun 17 18:52:54 2018 (r472626) +++ head/databases/dbtool/Makefile Sun Jun 17 19:06:51 2018 (r472627) @@ -14,13 +14,10 @@ LICENSE_FILE= ${WRKSRC}/COPYING LIB_DEPENDS= libpcre.so:devel/pcre -USES= gmake shebangfix +USES= gmake localbase shebangfix SHEBANG_FILES= samples/account-db/accdb bash_OLD_CMD= /bin/sh GNU_CONFIGURE= yes - -CPPFLAGS+= -I${LOCALBASE}/include -LDFLAGS+= -L${LOCALBASE}/lib PORTEXAMPLES= * PLIST_FILES= bin/dbtool man/man1/dbtool.1.gz Added: head/databases/dbtool/files/patch-engine.cc ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/databases/dbtool/files/patch-engine.cc Sun Jun 17 19:06:51 2018 (r472627) @@ -0,0 +1,64 @@ +engine.cc:539:46: error: non-constant-expression cannot be narrowed from type + 'std::__1::basic_string<char, std::__1::char_traits<char>, + std::__1::allocator<char> >::size_type' (aka 'unsigned long') to 'int' in + initializer list [-Wc++11-narrowing] + datum key = {(char *)config.key.c_str(), config.key.length()}; + ^~~~~~~~~~~~~~~~~~~ +engine.cc:539:46: note: insert an explicit cast to silence this issue + datum key = {(char *)config.key.c_str(), config.key.length()}; + ^~~~~~~~~~~~~~~~~~~ + static_cast<int>( ) + +--- engine.cc.orig 2018-06-17 15:07:26 UTC ++++ engine.cc +@@ -324,8 +324,8 @@ void Engine::from_input() { + Dbt d_key((char *)key.c_str(), key.length()); + Dbt d_value((char *)value.c_str(), value.length()); + #else +- datum d_key = {(char *)key.c_str(), key.length()}; +- datum d_value = {(char *)value.c_str(), value.length()}; ++ datum d_key = {(char *)key.c_str(), static_cast<int>(key.length())}; ++ datum d_value = {(char *)value.c_str(), static_cast<int>(value.length())}; + #endif + if(config.force == 1) { + #ifdef HAVE_BERKELEY +@@ -405,8 +405,8 @@ void Engine::insert() { + Dbt value(v, strlen(v)); + #else + int ret; +- datum key = {(char *)config.key.c_str(), config.key.length()}; +- datum value = {(char *)__value.c_str(), __value.length()}; ++ datum key = {(char *)config.key.c_str(), static_cast<int>(config.key.length())}; ++ datum value = {(char *)__value.c_str(), static_cast<int>(__value.length())}; + #endif + + if(config.force == 1) { +@@ -465,8 +465,8 @@ void Engine::update() { + Dbt value(v, strlen(v)); + #else + int ret; +- datum key = {(char *)config.key.c_str(), config.key.length()}; +- datum value = {(char *)__value.c_str(), __value.length()}; ++ datum key = {(char *)config.key.c_str(), static_cast<int>(config.key.length())}; ++ datum value = {(char *)__value.c_str(), static_cast<int>(__value.length())}; + #endif + + if(config.force == 1) { +@@ -536,7 +536,7 @@ void Engine::remove() { + } + db->close(0); + #else +- datum key = {(char *)config.key.c_str(), config.key.length()}; ++ datum key = {(char *)config.key.c_str(), static_cast<int>(config.key.length())}; + ret = gdbm_delete(db, key); + gdbm_close(db); + #endif +@@ -579,7 +579,7 @@ void Engine::select() { + db->close(0); + #else + datum content; +- datum key = {(char *)config.key.c_str(), config.key.length()}; ++ datum key = {(char *)config.key.c_str(), static_cast<int>(config.key.length())}; + content = gdbm_fetch(db, key); + string V(content.dptr, content.dsize); + if(config.with == 1)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201806171906.w5HJ6ppI074952>