2025-11-21 11:30 ftp://ftp.de.debian.org/debian/pool/main/g/gdal-grass/gdal-grass_2.0.0.orig.tar.gz cppcheck-options: --library=posix --library=gnu --library=bsd --inconclusive --enable=style,information --inline-suppr --template=daca2 --disable=missingInclude --suppress=unmatchedSuppression --check-library --debug-warnings --suppress=autoNoType --suppress=valueFlowBailout --suppress=bailoutUninitVar --suppress=symbolDatabaseWarning --suppress=normalCheckLevelConditionExpressions -D__GNUC__ --platform=unix64 -j1 platform: Linux-6.8.0-88-generic-x86_64-with-glibc2.39 python: 3.12.3 client-version: 1.3.69 compiler: g++ (Ubuntu 14.2.0-4ubuntu2~24.04) 14.2.0 cppcheck: head 2.18.0 head-info: 5374cd3 (2025-11-20 15:35:39 +0100) count: 2 37 elapsed-time: 0.0 0.5 head-timing-info: old-timing-info: head results: gdal-grass-2.0.0/source/grass.cpp:103:0: error: failed to evaluate #if condition, undefined function-like macro invocation: GDAL_COMPUTE_VERSION( ... ) [syntaxError] gdal-grass-2.0.0/source/ogrgrass.h:39:0: error: failed to evaluate #if condition, undefined function-like macro invocation: GDAL_COMPUTE_VERSION( ... ) [syntaxError] diff: head gdal-grass-2.0.0/source/grass.cpp:103:0: error: failed to evaluate #if condition, undefined function-like macro invocation: GDAL_COMPUTE_VERSION( ... ) [syntaxError] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:1089:23: style:inconclusive: Technically the member function 'GRASSRasterPath::isValid' can be const. [functionConst] gdal-grass-2.0.0/source/grass.cpp:77:10: note: Technically the member function 'GRASSRasterPath::isValid' can be const. gdal-grass-2.0.0/source/grass.cpp:1089:23: note: Technically the member function 'GRASSRasterPath::isValid' can be const. 2.18.0 gdal-grass-2.0.0/source/grass.cpp:1098:23: style:inconclusive: Technically the member function 'GRASSRasterPath::isCellHD' can be const. [functionConst] gdal-grass-2.0.0/source/grass.cpp:78:10: note: Technically the member function 'GRASSRasterPath::isCellHD' can be const. gdal-grass-2.0.0/source/grass.cpp:1098:23: note: Technically the member function 'GRASSRasterPath::isCellHD' can be const. 2.18.0 gdal-grass-2.0.0/source/grass.cpp:1118:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GDAL_DCAP_RASTER [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:190:11: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable poDS [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:441:52: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable poDS [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:472:63: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable Cell_head [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:508:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CE_Failure [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:585:23: style: Variable 'psDsWindow' can be declared as pointer to const [constVariablePointer] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:587:20: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GF_Read [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:736:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GCI_PaletteIndex [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:762:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable eDataType [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:780:14: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable eDataType [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:796:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable TRUE [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:815:35: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable OAMS_TRADITIONAL_GIS_ORDER [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:844:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CE_None [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:852:1: debug: Failed to parse 'using GrassErrorHandler = auto ( * ) ( const char * , int ) . int ;'. The checking continues anyway. [simplifyUsing] 2.18.0 gdal-grass-2.0.0/source/grass.cpp:870:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable G_GISRC_MODE_MEMORY [valueFlowBailoutIncompleteVar] head gdal-grass-2.0.0/source/ogrgrass.h:39:0: error: failed to evaluate #if condition, undefined function-like macro invocation: GDAL_COMPUTE_VERSION( ... ) [syntaxError] 2.18.0 gdal-grass-2.0.0/source/ogrgrassdatasource.cpp:116:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GRASS_GISBASE [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrassdatasource.cpp:195:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable FALSE [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrassdatasource.cpp:52:1: debug: Failed to parse 'using GrassErrorHandler = auto ( * ) ( const char * , int ) . int ;'. The checking continues anyway. [simplifyUsing] 2.18.0 gdal-grass-2.0.0/source/ogrgrassdriver.cpp:26:44: style: Parameter 'poOpenInfo' can be declared as pointer to const. However it seems that 'GRASSDatasetOpen' is a callback function, if 'poOpenInfo' is declared with const you might also need to cast function pointer(s). [constParameterCallback] gdal-grass-2.0.0/source/ogrgrassdriver.cpp:61:25: note: You might need to cast the function pointer here gdal-grass-2.0.0/source/ogrgrassdriver.cpp:26:44: note: Parameter 'poOpenInfo' can be declared as pointer to const 2.18.0 gdal-grass-2.0.0/source/ogrgrassdriver.cpp:30:43: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GA_Update [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrassdriver.cpp:57:31: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GDAL_DCAP_VECTOR [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:1004:47: style:inconclusive: Function 'SetAttributes' argument 1 names different: declaration 'feature' definition 'poFeature'. [funcArgNamesDifferent] gdal-grass-2.0.0/source/ogrgrass.h:133:36: note: Function 'SetAttributes' argument 1 names different: declaration 'feature' definition 'poFeature'. gdal-grass-2.0.0/source/ogrgrasslayer.cpp:1004:47: note: Function 'SetAttributes' argument 1 names different: declaration 'feature' definition 'poFeature'. 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:1051:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable m_poFilterGeom [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:1085:12: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable OGRERR_NONE [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:1097:23: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable OLCRandomRead [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:24:34: style:inconclusive: Function 'OGRGRASSLayer' argument 1 names different: declaration 'layer' definition 'layerIndex'. [funcArgNamesDifferent] gdal-grass-2.0.0/source/ogrgrass.h:35:23: note: Function 'OGRGRASSLayer' argument 1 names different: declaration 'layer' definition 'layerIndex'. gdal-grass-2.0.0/source/ogrgrasslayer.cpp:24:34: note: Function 'OGRGRASSLayer' argument 1 names different: declaration 'layer' definition 'layerIndex'. 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:338:9: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable m_poFilterGeom [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:392:16: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable OGRERR_NONE [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:481:32: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable DB_NEXT [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:52:49: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable GV_POINT [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:582:63: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable DB_SCROLL [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:605:28: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable DB_FIRST [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:676:22: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable type [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:751:13: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable m_poFilterGeom [valueFlowBailoutIncompleteVar] 2.18.0 gdal-grass-2.0.0/source/ogrgrasslayer.cpp:833:65: debug: valueFlowConditionExpressions bailout: Skipping function due to incomplete variable CPL_FRMT_GIB [valueFlowBailoutIncompleteVar] DONE