Meson's default warning levels highlighted several warnings. They are currently suppressed, but they should eventually be fixed. Click below for details from my build tests:
System information
```
The Meson build system
Version: 1.5.1
Source dir: /home/dilks/j/hipo
Build dir: /home/dilks/j/hipo/build
Build type: native build
Project name: hipo4
Project version: 4.2.0
C++ compiler for the host machine: c++ (gcc 14.2.1 "c++ (GCC) 14.2.1 20240805")
C++ linker for the host machine: c++ ld.bfd 2.43.0
Host machine cpu family: x86_64
Host machine cpu: x86_64
Fortran compiler for the host machine: gfortran (gcc 14.2.1 "GNU Fortran (GCC) 14.2.1 20240805")
Fortran linker for the host machine: gfortran ld.bfd 2.43.0
Dependency liblz4 found: YES 1.10.0 (cached)
Dependency ROOT found: YES 6.28.10 (cached)
Dependency threads found: YES unknown (cached)
Program root-config found: YES (/home/dilks/builds/root/bin/root-config)
Program rootcling found: YES (/home/dilks/builds/root/bin/rootcling)
Found pkg-config: YES (/usr/bin/pkg-config) 2.1.1
```
Ninja output: the warnings
```
[1/63] Compiling C++ object hipo4/libhipo4.so.p/recordbuilder.cpp.o
../hipo4/recordbuilder.cpp: In member function ‘bool hipo::recordbuilder::addEvent(std::vector&, int, int)’:
../hipo4/recordbuilder.cpp:52:39: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
52 | if((bufferEventsPosition+length)>=bufferEvents.size()) return false;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
../hipo4/recordbuilder.cpp:53:34: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
53 | if((bufferIndexEntries+1)*4>=bufferIndex.size()) return false;
| ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
[2/63] Compiling C++ object hipo4/libhipo4.so.p/datastream.cpp.o
[3/63] Compiling C++ object hipo4/libhipo4.so.p/node.cpp.o
[4/63] Compiling C++ object hipo4/libhipo4.so.p/record.cpp.o
../hipo4/record.cpp: In member function ‘void hipo::record::readRecord(std::ifstream&, long int, int)’:
../hipo4/record.cpp:71:40: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
71 | if(recordHeader.signatureString==0xc0da0100) recordHeader.dataEndianness = 0;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
../hipo4/record.cpp:100:33: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
100 | if(dataBufferLengthBytes>recordCompressedBuffer.size()){
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../hipo4/record.cpp:119:31: warning: comparison of integer expressions of different signedness: ‘std::vector::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
119 | if(recordBuffer.size()::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
206 | if(dataBufferLengthBytes>recordCompressedBuffer.size()){
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../hipo4/record.cpp:231:29: warning: comparison of integer expressions of different signedness: ‘std::vector::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
231 | if(recordBuffer.size()::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
282 | if(recordLength>recordCompressedBuffer.size()){
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../hipo4/record.cpp:304:38: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
304 | if(recordHeader.signatureString==0xc0da0100) recordHeader.dataEndianness = 0;
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
../hipo4/record.cpp:348:29: warning: comparison of integer expressions of different signedness: ‘std::vector::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
348 | if(recordBuffer.size()::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
588 | if(size>dataBuffer.size()) dataBuffer.resize(size+56);
| ~~~~^~~~~~~~~~~~~~~~~~
[5/63] Compiling C++ object hipo4/libhipo4.so.p/utils.cpp.o
../hipo4/utils.cpp: In static member function ‘static std::string hipo::utils::substring(const std::string&, const char*, const char*, int)’:
../hipo4/utils.cpp:58:15: warning: unused variable ‘position’ [-Wunused-variable]
58 | int position = 0;
| ^~~~~~~~
[6/63] Compiling C++ object hipo4/libhipo4.so.p/event.cpp.o
../hipo4/event.cpp: In static member function ‘static std::pair hipo::event::getStructurePosition(const char*, int, int)’:
../hipo4/event.cpp:236:21: warning: unused variable ‘type’ [-Wunused-variable]
236 | uint8_t type = *(reinterpret_cast (&buffer[position+3]));
| ^~~~
../hipo4/event.cpp: In member function ‘std::pair hipo::event::getStructurePosition(int, int)’:
../hipo4/event.cpp:251:21: warning: unused variable ‘type’ [-Wunused-variable]
251 | uint8_t type = *(reinterpret_cast(&dataBuffer[position+3]));
| ^~~~
../hipo4/event.cpp: In member function ‘std::pair hipo::event::getStructurePosition4(int, int)’:
../hipo4/event.cpp:267:21: warning: unused variable ‘type’ [-Wunused-variable]
267 | uint8_t type = *(reinterpret_cast(&dataBuffer[position+3]));
| ^~~~
../hipo4/event.cpp: In member function ‘void hipo::event::init(const char*, int)’:
../hipo4/event.cpp:292:28: warning: comparison of integer expressions of different signedness: ‘std::vector::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
292 | if(dataBuffer.size()<=size){
| ~~~~~~~~~~~~~~~~~^~~~~~
[7/63] Compiling C++ object hipo4/libhipo4.so.p/parser.cpp.o
[8/63] Compiling C++ object hipo4/libhipo4.so.p/tuple.cpp.o
../hipo4/tuple.cpp: In member function ‘void hipo::tuple::initBranches(int)’:
../hipo4/tuple.cpp:53:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
53 | for(int i = 0; i < branches.size(); i++) branches[i]->initStructureBySize(120,1,4,800);
| ~~^~~~~~~~~~~~~~~~~
../hipo4/tuple.cpp: In member function ‘void hipo::tuple::fill(const float*)’:
../hipo4/tuple.cpp:58:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
58 | for(int i = 0; i < branches.size(); i++) branches[i]->putFloatAt(currentPosition*4,array[i]);
| ~~^~~~~~~~~~~~~~~~~
../hipo4/tuple.cpp: In member function ‘void hipo::tuple::writeAndUpdate()’:
../hipo4/tuple.cpp:74:25: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
74 | for(int i = 0; i < branches.size(); i++){
| ~~^~~~~~~~~~~~~~~~~
[9/63] Compiling C++ object examples/hipo_builder.p/builder.cc.o
[10/63] Compiling C++ object hipo4/libhipo4.so.p/reader.cpp.o
../hipo4/reader.cpp: In member function ‘void hipo::reader::readIndex()’:
../hipo4/reader.cpp:179:13: warning: unused variable ‘length’ [-Wunused-variable]
179 | int length = base.getIntAt ( rows*8 + i*4);
| ^~~~~~
../hipo4/reader.cpp:182:13: warning: unused variable ‘uid2’ [-Wunused-variable]
182 | long uid2 = base.getLongAt( rows*24 + i*8);
| ^~~~
../hipo4/reader.cpp: In member function ‘bool hipo::reader::next(std::vector&)’:
../hipo4/reader.cpp:274:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
274 | for(int k = 0; k < list.size(); k++){
| ~~^~~~~~~~~~~~~
../hipo4/reader.cpp: In member function ‘std::vector hipo::reader::getBanks(std::vector >)’:
../hipo4/reader.cpp:283:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
283 | for(int k = 0; k < names.size(); k++){
| ~~^~~~~~~~~~~~~~
../hipo4/reader.cpp: In member function ‘bool hipo::readerIndex::advance()’:
../hipo4/reader.cpp:509:26: warning: comparison of integer expressions of different signedness: ‘std::vector::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
509 | if(recordEvents.size() < currentRecord + 2 + 1){
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
../hipo4/reader.cpp: In member function ‘bool hipo::readerIndex::gotoEvent(int)’:
../hipo4/reader.cpp:536:32: warning: variable ‘u_bound’ set but not used [-Wunused-but-set-variable]
536 | std::vector::iterator u_bound =
| ^~~~~~~
../hipo4/reader.cpp: In member function ‘void hipo::readerIndex::show()’:
../hipo4/reader.cpp:550:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
550 | for(int i = 0; i < recordEvents.size(); i++){
| ~~^~~~~~~~~~~~~~~~~~~~~
[11/63] Compiling C++ object examples/hipo_dataframe.p/dataframe.cc.o
[12/63] Compiling C++ object examples/hipo_readEvents.p/readEvents.cc.o
[13/63] Compiling C++ object examples/hipo_readFileDebug.p/readFileDebug.cc.o
../examples/readFileDebug.cc: In function ‘void debug2(const char*)’:
../examples/readFileDebug.cc:78:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
78 | for(int r = 0; r < events.size(); r++){
| ~~^~~~~~~~~~~~~~~
../examples/readFileDebug.cc: In function ‘void debug3(const char*)’:
../examples/readFileDebug.cc:107:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
107 | for(int r = 0; r < events.size(); r++){
| ~~^~~~~~~~~~~~~~~
[14/63] Compiling C++ object hipo4/libhipo4.so.p/dictionary.cpp.o
../hipo4/dictionary.cpp: In member function ‘void hipo::schema::parse(const std::string&)’:
../hipo4/dictionary.cpp:18:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
18 | for(int i = 0; i < entries.size(); i++){
| ~~^~~~~~~~~~~~~~~~
../hipo4/dictionary.cpp: In member function ‘std::string hipo::schema::getSchemaString()’:
../hipo4/dictionary.cpp:87:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
87 | for(int loop = 0; loop < schemaEntries.size(); loop++){
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~
../hipo4/dictionary.cpp: In member function ‘std::string hipo::schema::getSchemaStringJson()’:
../hipo4/dictionary.cpp:103:28: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
103 | for(int loop = 0; loop < schemaEntries.size(); loop++){
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~
[15/63] Compiling C++ object hipo4/libhipo4.so.p/bank.cpp.o
../hipo4/bank.cpp: In member function ‘bool hipo::structure::allocate(int)’:
../hipo4/bank.cpp:54:32: warning: comparison of integer expressions of different signedness: ‘std::vector::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
54 | if(structureBuffer.size()::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
315 | for(int k = 0; k < offsets.size(); k++) printf("%5d ",k); printf("\n");
| ~~^~~~~~~~~~~~~~~~
../hipo4/bank.cpp:315:3: warning: this ‘for’ clause does not guard... [-Wmisleading-indentation]
315 | for(int k = 0; k < offsets.size(); k++) printf("%5d ",k); printf("\n");
| ^~~
../hipo4/bank.cpp:315:61: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the ‘for’
315 | for(int k = 0; k < offsets.size(); k++) printf("%5d ",k); printf("\n");
| ^~~~~~
../hipo4/bank.cpp:317:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
317 | for(int k = 0; k < offsets.size(); k++) printf("%5d ",types[k]);
| ~~^~~~~~~~~~~~~~~~
../hipo4/bank.cpp:319:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
319 | for(int k = 0; k < offsets.size(); k++) printf("%5d ",offsets[k]);
| ~~^~~~~~~~~~~~~~~~
../hipo4/bank.cpp:330:33: warning: format ‘%lld’ expects argument of type ‘long long int’, but argument 2 has type ‘int64_t’ {aka ‘long int’} [-Wformat=]
330 | if(type==8) printf("%lld ",getLong(e,r));
| ~~~^ ~~~~~~~~~~~~
| | |
| | int64_t {aka long int}
| long long int
| %ld
../hipo4/bank.cpp: In static member function ‘static hipo::bank::rowlist::list_t hipo::bank::rowlist::createFullList(int)’:
../hipo4/bank.cpp:396:10: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
396 | if(num <= s_number_list.size())
| ~~~~^~~~~~~~~~~~~~~~~~~~~~~
../hipo4/bank.cpp:400:55: warning: comparison of integer expressions of different signedness: ‘std::vector::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
400 | for(list_t::size_type i = s_number_list.size(); i < num; i++)
| ~~^~~~~
../hipo4/bank.cpp: In member function ‘void hipo::bank::putInt(const char*, int, int32_t)’:
../hipo4/bank.cpp:461:7: warning: unused variable ‘type’ [-Wunused-variable]
461 | int type = bankSchema.getEntryType(item);
| ^~~~
../hipo4/bank.cpp: In member function ‘void hipo::bank::putShort(const char*, int, int16_t)’:
../hipo4/bank.cpp:467:7: warning: unused variable ‘type’ [-Wunused-variable]
467 | int type = bankSchema.getEntryType(item);
| ^~~~
../hipo4/bank.cpp: In member function ‘void hipo::bank::putByte(const char*, int, int8_t)’:
../hipo4/bank.cpp:473:7: warning: unused variable ‘type’ [-Wunused-variable]
473 | int type = bankSchema.getEntryType(item);
| ^~~~
../hipo4/bank.cpp: In member function ‘void hipo::bank::putFloat(const char*, int, float)’:
../hipo4/bank.cpp:479:7: warning: unused variable ‘type’ [-Wunused-variable]
479 | int type = bankSchema.getEntryType(item);
| ^~~~
../hipo4/bank.cpp: In member function ‘void hipo::bank::putDouble(const char*, int, double)’:
../hipo4/bank.cpp:486:7: warning: unused variable ‘type’ [-Wunused-variable]
486 | int type = bankSchema.getEntryType(item);
| ^~~~
../hipo4/bank.cpp: In member function ‘void hipo::bank::putLong(const char*, int, int64_t)’:
../hipo4/bank.cpp:493:7: warning: unused variable ‘type’ [-Wunused-variable]
493 | int type = bankSchema.getEntryType(item);
| ^~~~
../hipo4/bank.cpp: In member function ‘void hipo::bank::show(bool) const’:
../hipo4/bank.cpp:526:90: warning: comparison of integer expressions of different signedness: ‘std::vector::size_type’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
526 | bool loopAllRows = showAllRows || ! bankRowList.isInitialized() || getRowList().size() == getRows();
| ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~
[16/63] Compiling C++ object examples/hipo_bankRowList.p/bankRowList.cc.o
[17/63] Compiling C++ object hipo4/libhipo4.so.p/fusion.cpp.o
[18/63] Compiling C++ object hipo4/libhipo4.so.p/reaction.cpp.o
[19/63] Compiling C++ object hipo4/libhipo4.so.p/wrapper.cpp.o
[20/63] Compiling C++ object examples/hipo_readHist.p/readHist.cc.o
[21/63] Compiling C++ object hipo4/libhipo4.so.p/writer.cpp.o
../hipo4/writer.cpp: In member function ‘void hipo::writer::open(const char*)’:
../hipo4/writer.cpp:48:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
48 | for(int i = 0; i < schemaList.size(); i++){
| ~~^~~~~~~~~~~~~~~~~~~
../hipo4/writer.cpp: In member function ‘void hipo::writer::addDictionary(hipo::dictionary&)’:
../hipo4/writer.cpp:120:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
120 | for(int i = 0; i < schemaList.size(); i++){
| ~~^~~~~~~~~~~~~~~~~~~
../hipo4/writer.cpp: In member function ‘void hipo::writer::showSummary()’:
../hipo4/writer.cpp:174:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
174 | for(int loop = 0; loop < writerRecordInfo.size(); loop++){
| ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
[22/63] Compiling C++ object examples/hipo_readFusion.p/readFusion.cc.o
[23/63] Compiling C++ object examples/hipo_readFile.p/readFile.cc.o
[24/63] Linking static target hipo4/libhipo4.a
[25/63] Linking target hipo4/libhipo4.so
[26/63] Compiling C++ object examples/hipo_schema.p/schema.cc.o
[27/63] Compiling C++ object examples/hipo_readFileTags.p/readFileTags.cc.o
[28/63] Generating symbol file hipo4/libhipo4.so.p/libhipo4.so.symbols
[29/63] Linking target examples/hipo_builder
[30/63] Linking target examples/hipo_readEvents
[31/63] Linking target examples/hipo_readFileDebug
[32/63] Linking target examples/hipo_readFile
[33/63] Linking target examples/hipo_readFusion
[34/63] Linking target examples/hipo_dataframe
[35/63] Linking target examples/hipo_bankRowList
[36/63] Compiling C++ object examples/hipo_showFile.p/showFile.cc.o
[37/63] Compiling C++ object examples/hipo_writeEvents.p/writeEvents.cc.o
[38/63] Linking target examples/hipo_readFileTags
[39/63] Linking target examples/hipo_readHist
[40/63] Linking target examples/hipo_writeEvents
[41/63] Linking target examples/hipo_schema
[42/63] Compiling C++ object examples/hipo_tupleFile.p/tupleFile.cc.o
[43/63] Linking target examples/hipo_showFile
[44/63] Linking target examples/hipo_tupleFile
[45/63] Compiling C++ object examples/hipo_writeFile.p/writeFile.cc.o
[46/63] Compiling C++ object examples/hipo_ana_benchmark.p/benchmarks_ana_benchmark.cc.o
../examples/benchmarks/ana_benchmark.cc: In function ‘int main(int, char**)’:
../examples/benchmarks/ana_benchmark.cc:94:34: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
94 | for(int r = 0 ; r < ref.size(); r++){
| ~~^~~~~~~~~~~~
[47/63] Compiling C++ object examples/hipo_writeUserHeader.p/writeUserHeader.cc.o
[48/63] Linking target examples/hipo_writeFile
[49/63] Linking target examples/hipo_writeUserHeader
[50/63] Linking target examples/hipo_ana_benchmark
[51/63] Compiling C++ object examples/hipo_map_benchmark.p/benchmarks_map_benchmark.cc.o
../examples/benchmarks/map_benchmark.cc: In function ‘long int hashCode(std::string&)’:
../examples/benchmarks/map_benchmark.cc:20:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
20 | for(int i = 0; i < str.size(); i++){
| ~~^~~~~~~~~~~~
../examples/benchmarks/map_benchmark.cc: In function ‘long int iterateHash(std::vector >&, int)’:
../examples/benchmarks/map_benchmark.cc:38:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
38 | for(int e = 0; e < keys.size(); e++){
| ~~^~~~~~~~~~~~~
../examples/benchmarks/map_benchmark.cc: In function ‘long int iterateHashXOR(std::vector >&, int)’:
../examples/benchmarks/map_benchmark.cc:49:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
49 | for(int e = 0; e < keys.size(); e++){
| ~~^~~~~~~~~~~~~
../examples/benchmarks/map_benchmark.cc: In function ‘std::map, int> createMap(std::vector >)’:
../examples/benchmarks/map_benchmark.cc:60:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
60 | for(int i = 0; i < keys.size(); i++){
| ~~^~~~~~~~~~~~~
../examples/benchmarks/map_benchmark.cc: In function ‘std::map createMapLong(std::vector)’:
../examples/benchmarks/map_benchmark.cc:68:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
68 | for(int i = 0; i < keys.size(); i++){
| ~~^~~~~~~~~~~~~
../examples/benchmarks/map_benchmark.cc: In function ‘long int iterate(std::map, int>&, std::vector >&, int)’:
../examples/benchmarks/map_benchmark.cc:77:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
77 | for(int e = 0; e < keys.size(); e++){
| ~~^~~~~~~~~~~~~
../examples/benchmarks/map_benchmark.cc: In function ‘long int iterateLong(std::map&, std::vector&, int)’:
../examples/benchmarks/map_benchmark.cc:87:24: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
87 | for(int e = 0; e < keys.size(); e++){
| ~~^~~~~~~~~~~~~
../examples/benchmarks/map_benchmark.cc: In function ‘std::vector createHash(std::vector >&)’:
../examples/benchmarks/map_benchmark.cc:96:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
96 | for(int i = 0; i < keys.size();i++){
| ~~^~~~~~~~~~~~~
../examples/benchmarks/map_benchmark.cc: In function ‘std::vector createHashXOR(std::vector >&)’:
../examples/benchmarks/map_benchmark.cc:105:20: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
105 | for(int i = 0; i < keys.size();i++){
| ~~^~~~~~~~~~~~~
../examples/benchmarks/map_benchmark.cc: In function ‘long int benchHashXOR(std::vector >&, int, int)’:
../examples/benchmarks/map_benchmark.cc:145:23: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
145 | for(int e = 0; e < keys.size(); e++){
| ~~^~~~~~~~~~~~~
[52/63] Linking target examples/hipo_map_benchmark
[53/63] Compiling C++ object examples/hipo_histograms.p/histograms.cc.o
[54/63] Linking target examples/hipo_histograms
[55/63] Compiling C++ object examples/hipo_multithread.p/multithread.cc.o
[56/63] Linking target examples/hipo_multithread
[57/63] Compiling C++ object examples/hipo_readJson.p/readJson.cc.o
[58/63] Linking target examples/hipo_readJson
[59/63] Generating extensions/dataframes/@dataframe_basename@Dict with a custom command
Warning in cling::IncrementalParser::CheckABICompatibility():
Possible C++ standard library mismatch, compiled with __GLIBCXX__ '20240522'
Extraction of runtime standard library version was: '20240805'
[60/63] Compiling C++ object extensions/dataframes/libHipoDataFrame.so.p/RHipoDS.cxx.o
../extensions/dataframes/RHipoDS.cxx: In member function ‘std::string RHipoDS::GetTranslatedColumnName(std::string) const’:
../extensions/dataframes/RHipoDS.cxx:90:12: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘int’ [-Wsign-compare]
90 | if (pos != -1) name.replace(pos, 2, "_");
| ~~~~^~~~~
../extensions/dataframes/RHipoDS.cxx:92:12: warning: comparison of integer expressions of different signedness: ‘long unsigned int’ and ‘int’ [-Wsign-compare]
92 | if (pos != -1) name.replace(pos, 1, "_");
| ~~~~^~~~~
../extensions/dataframes/RHipoDS.cxx: In member function ‘void RHipoDS::Init(int)’:
../extensions/dataframes/RHipoDS.cxx:122:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
122 | for (int ib = 0; ib < fAllBankNames.size(); ++ib) {
| ~~~^~~~~~~~~~~~~~~~~~~~~~
../extensions/dataframes/RHipoDS.cxx:130:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
130 | for (int ib = 0; ib < fAllBankNames.size(); ++ib) {
| ~~~^~~~~~~~~~~~~~~~~~~~~~
../extensions/dataframes/RHipoDS.cxx: In member function ‘int RHipoDS::AddFiles(std::string_view)’:
../extensions/dataframes/RHipoDS.cxx:179:24: warning: comparison of integer expressions of different signedness: ‘size_t’ {aka ‘long unsigned int’} and ‘int’ [-Wsign-compare]
179 | for(size_t i = 0; i < n_files; ++i) {
| ~~^~~~~~~~~
../extensions/dataframes/RHipoDS.cxx: In member function ‘int RHipoDS::AddHipoBank(std::string, int)’:
../extensions/dataframes/RHipoDS.cxx:221:34: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
221 | if(i_type < 0 || i_type >= fgCollTypeNumToString.size()){
| ~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../extensions/dataframes/RHipoDS.cxx: In member function ‘virtual std::vector > RHipoDS::GetEntryRanges()’:
../extensions/dataframes/RHipoDS.cxx:318:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
318 | if( ++fHipoFiles_index >= fHipoFiles.size()) return entryRanges;
| ~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~
../extensions/dataframes/RHipoDS.cxx: In member function ‘void RHipoDS::ClearData(int)’:
../extensions/dataframes/RHipoDS.cxx:411:21: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
411 | for(int i=0; i fHipoCurrentMaxEvent) return false;
| ~~~~~~^~~~~~~~~~~~~~~~~~~~~~
../extensions/dataframes/RHipoDS.cxx:458:41: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector >::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
458 | for(int active_index=0; active_index < fActiveColumns.size(); ++active_index){
| ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~
../extensions/dataframes/RHipoDS.cxx: In member function ‘virtual std::vector RHipoDS::GetColumnReadersImpl(std::string_view, const std::type_info&)’:
../extensions/dataframes/RHipoDS.cxx:578:30: warning: comparison of integer expressions of different signedness: ‘int’ and ‘unsigned int’ [-Wsign-compare]
578 | for(int i=0; i
Meson's default warning levels highlighted several warnings. They are currently suppressed, but they should eventually be fixed. Click below for details from my build tests:
System information
``` The Meson build system Version: 1.5.1 Source dir: /home/dilks/j/hipo Build dir: /home/dilks/j/hipo/build Build type: native build Project name: hipo4 Project version: 4.2.0 C++ compiler for the host machine: c++ (gcc 14.2.1 "c++ (GCC) 14.2.1 20240805") C++ linker for the host machine: c++ ld.bfd 2.43.0 Host machine cpu family: x86_64 Host machine cpu: x86_64 Fortran compiler for the host machine: gfortran (gcc 14.2.1 "GNU Fortran (GCC) 14.2.1 20240805") Fortran linker for the host machine: gfortran ld.bfd 2.43.0 Dependency liblz4 found: YES 1.10.0 (cached) Dependency ROOT found: YES 6.28.10 (cached) Dependency threads found: YES unknown (cached) Program root-config found: YES (/home/dilks/builds/root/bin/root-config) Program rootcling found: YES (/home/dilks/builds/root/bin/rootcling) Found pkg-config: YES (/usr/bin/pkg-config) 2.1.1 ```Ninja output: the warnings
``` [1/63] Compiling C++ object hipo4/libhipo4.so.p/recordbuilder.cpp.o ../hipo4/recordbuilder.cpp: In member function ‘bool hipo::recordbuilder::addEvent(std::vector