[MCOL-537] Some compiler warnings need fixing Created: 2017-01-26  Updated: 2019-08-07  Resolved: 2019-05-10

Status: Closed
Project: MariaDB ColumnStore
Component/s: ?
Affects Version/s: None
Fix Version/s: 1.2.4

Type: Bug Priority: Minor
Reporter: Andrew Hutchings (Inactive) Assignee: Patrick LeBlanc (Inactive)
Resolution: Fixed Votes: 0
Labels: None

Issue Links:
Problem/Incident
causes MCOL-3415 we_splitterapp has a setuid error in ... Closed

 Description   

Some of the following are definitely bugs, we should look at fixing them all:

/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/funcexp/func_div.cpp: In member function ‘virtual int64_t funcexp::Func_div::getIntVal(rowgroup::Row&, funcexp::FunctionParm&, bool&, execplan::CalpontSystemCatalog::ColType&)’:
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/funcexp/func_div.cpp:58:16: warning: converting to non-pointer type ‘long int’ from NULL [-Wconversion-null]
         return NULL;
                ^~~~
 
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/funcexp/func_div.cpp: In member function ‘virtual uint64_t funcexp::Func_div::getUintVal(rowgroup::Row&, funcexp::FunctionParm&, bool&, execplan::CalpontSystemCatalog::ColType&)’:
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/funcexp/func_div.cpp:81:16: warning: converting to non-pointer type ‘uint64_t {aka long unsigned int}’ from NULL [-Wconversion-null]
         return NULL;
                ^~~~
 
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/funcexp/func_lpad.cpp: In member function ‘virtual std::__cxx11::string funcexp::Func_lpad::getStrVal(rowgroup::Row&, funcexp::FunctionParm&, bool&, execplan::CalpontSystemCatalog::ColType&)’:
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/funcexp/func_lpad.cpp:133:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  if(strwclen > len)
     ~~~~~~~~~^~~~~
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/funcexp/func_lpad.cpp:150:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     if (strSize == len)
         ~~~~~~~~^~~~~~
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/funcexp/func_lpad.cpp:157:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     if (strSize > len)
         ~~~~~~~~^~~~~
 
 In member function ‘virtual std::__cxx11::string funcexp::Func_rpad::getStrVal(rowgroup::Row&, funcexp::FunctionParm&, bool&, execplan::CalpontSystemCatalog::ColType&)’:
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/funcexp/func_rpad.cpp:133:14: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
  if(strwclen > len)
     ~~~~~~~~~^~~~~
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/funcexp/func_rpad.cpp:150:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     if (strSize == len)
         ~~~~~~~~^~~~~~
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/utils/funcexp/func_rpad.cpp:157:17: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     if (strSize > len)
         ~~~~~~~~^~~~~
 
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/oam/oamcpp/liboamcpp.cpp: In member function ‘void oam::Oam::sendStatusUpdate(messageqcpp::ByteStream, messageqcpp::ByteStream::byte)’:
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/oam/oamcpp/liboamcpp.cpp:9321:28: warning: self-comparison always evaluates to true [-Wtautological-compare]
     if ( returnRequestType == returnRequestType ) {
          ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
 
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/primitives/blockcache/filebuffer.cpp: In copy constructor ‘dbbc::FileBuffer::FileBuffer(const dbbc::FileBuffer&)’:
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/primitives/blockcache/filebuffer.cpp:41:2: warning: nonnull argument ‘this’ compared to NULL [-Wnonnull-compare]
  if (this==NULL || this==&rhs)
  ^~
 
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/dbcon/mysql/is_columnstore_files.cpp: In function ‘bool get_file_sizes(int, const char*, off_t*, off_t*)’:
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/dbcon/mysql/is_columnstore_files.cpp:70:16: warning: ‘msgQueueClient’ may be used uninitialized in this function [-Wmaybe-uninitialized]
         delete msgQueueClient;
                ^~~~~~~~~~~~~~
 
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/dbcon/mysql/ha_calpont_impl.cpp: In function ‘int ha_calpont_impl_rnd_init(TABLE*)’:
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/dbcon/mysql/ha_calpont_impl.cpp:2432:24: warning: comparison of constant ‘0’ with boolean expression is always false [-Wbool-compare]
  if (bSystemQueryReady < 0)
      ~~~~~~~~~~~~~~~~~~^~~
 
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/oamapps/postConfigure/postConfigure.cpp: In function ‘int main(int, char**)’:
/home/linuxjedi/Programming/Git/mariadb-columnstore-server/mariadb-columnstore-engine/oamapps/postConfigure/postConfigure.cpp:2808:19: warning: comparison with string literal results in unspecified behavior [-Waddress]
     if ( pass1 == "exit")
                   ^~~~~~



 Comments   
Comment by Patrick LeBlanc (Inactive) [ 2018-11-15 ]

I'll work on this on and off and other things come up. Will likely take a while to fix them all.

Comment by Patrick LeBlanc (Inactive) [ 2019-05-10 ]

After a few iterations, Roman got it warning-free on everything but U16, and it builds on all platforms successfully. This is a massive noise reduction.

Generated at Thu Feb 08 02:21:49 UTC 2024 using Jira 8.20.16#820016-sha1:9d11dbea5f4be3d4cc21f03a88dd11d8c8687422.