compiling with cgns support fails due to compile time bugs
This issue was created automatically from an original Mantis Issue. Further discussion may take place here.
With libcgns 3.1.3 release 3 installed, I enable -DVISIT_BUILD_READER_CGNS:BOOL=ON and I get compile time errors. After trying to patch the first set of errs, there are more (round 2) which I think should be fixed by someone knowledgeable about the internals. I have attached "fix-cgns-reader-compile.diff" which fixes the first set of errors in case you want to use that as a starting point.
[ 68%] Building CXX object Utilities/VisItBridge/databases/CMakeFiles/vtkVisItDatabases.dir/CGNS/avtCGNSFileFormat.C.o /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C: In member function 'void avtCGNSFileFormat::ReadTimes()': /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:331:74: error: cannot convert 'int*' to 'cgsize_t* {aka long int*}' for argument '5' to 'int cg_array_info(int, char*, DataType_t*, int*, cgsize_t*)' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C: In member function 'bool avtCGNSFileFormat::GetVariablesForBase(int, avtCGNSFileFormat::BaseInformation&)': /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:625:73: error: cannot convert 'int*' to 'cgsize_t* {aka long int*}' for argument '5' to 'int cg_zone_read(int, int, int, char*, cgsize_t*)' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C: In member function 'void avtCGNSFileFormat::AddReferenceStateExpressions(avtDatabaseMetaData*, int, int, const string&, const string&)': /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:988:66: error: cannot convert 'int*' to 'cgsize_t* {aka long int*}' for argument '5' to 'int cg_array_info(int, char*, DataType_t*, int*, cgsize_t*)' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C: In member function 'virtual vtkDataSet* avtCGNSFileFormat::GetMesh(int, int, const char*)': /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:1361:65: error: cannot convert 'int*' to 'cgsize_t* {aka long int*}' for argument '5' to 'int cg_zone_read(int, int, int, char*, cgsize_t*)' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C: In member function 'bool avtCGNSFileFormat::GetCoords(int, int, const int*, bool, float**, int*)': /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:1510:62: error: cannot convert 'int*' to 'const cgsize_t* {aka const long int*}' for argument '6' to 'int cg_coord_read(int, int, int, const char*, DataType_t, const cgsize_t*, const cgsize_t*, void*)' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C: In member function 'vtkDataSet* avtCGNSFileFormat::GetUnstructuredMesh(int, int, const char*, const int*)': /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:1732:55: error: cannot convert 'int*' to 'cgsize_t* {aka long int*}' for argument '7' to 'int cg_section_read(int, int, int, int, char*, ElementType_t*, cgsize_t*, cgsize_t*, int*, int*)' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:1745:83: error: cannot convert 'int*' to 'cgsize_t* {aka long int*}' for argument '5' to 'int cg_ElementDataSize(int, int, int, int, cgsize_t*)' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:1759:85: error: cannot convert 'int*' to 'cgsize_t* {aka long int*}' for argument '5' to 'int cg_elements_read(int, int, int, int, cgsize_t*, cgsize_t*)' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C: In member function 'virtual vtkDataArray* avtCGNSFileFormat::GetVar(int, int, const char*)': /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:2101:65: error: cannot convert 'int*' to 'cgsize_t* {aka long int*}' for argument '5' to 'int cg_zone_read(int, int, int, char*, cgsize_t*)' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:2297:61: error: cannot convert 'int*' to 'const cgsize_t* {aka const long int*}' for argument '7' to 'int cg_field_read(int, int, int, int, const char*, DataType_t, const cgsize_t*, const cgsize_t*, void*)' make[2]: *** [Utilities/VisItBridge/databases/CMakeFiles/vtkVisItDatabases.dir/CGNS/avtCGNSFileFormat.C.o] Error 1 make[1]: *** [Utilities/VisItBridge/databases/CMakeFiles/vtkVisItDatabases.dir/all] Error 2 make: *** [all] Error 2
round 2:
[ 68%] Building CXX object Utilities/VisItBridge/databases/CMakeFiles/vtkVisItDatabases.dir/CGNS/avtCGNSFileFormat.C.o /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C: In member function 'virtual vtkDataSet* avtCGNSFileFormat::GetMesh(int, int, const char*)': /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:1396:72: error: no matching function for call to 'avtCGNSFileFormat::GetCurvilinearMesh(int&, int&, const char*&, cgsize_t [9])' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:1396:72: note: candidate is: /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.h:145:28: note: vtkDataSet* avtCGNSFileFormat::GetCurvilinearMesh(int, int, const char*, const int*) /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.h:145:28: note: no known conversion for argument 4 from 'cgsize_t [9] {aka long int [9]}' to 'const int*' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:1399:73: error: no matching function for call to 'avtCGNSFileFormat::GetUnstructuredMesh(int&, int&, const char*&, cgsize_t [9])' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:1399:73: note: candidate is: /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.h:147:28: note: vtkDataSet* avtCGNSFileFormat::GetUnstructuredMesh(int, int, const char*, const int*) /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.h:147:28: note: no known conversion for argument 4 from 'cgsize_t [9] {aka long int [9]}' to 'const int*' /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C: In member function 'vtkDataSet* avtCGNSFileFormat::GetUnstructuredMesh(int, int, const char*, const int*)': /build/src/ParaView-3.12.0/Utilities/VisItBridge/databases/CGNS/avtCGNSFileFormat.C:1778:35: error: cannot convert 'cgsize_t* {aka long int*}' to 'const int*' in initialization make[2]: *** [Utilities/VisItBridge/databases/CMakeFiles/vtkVisItDatabases.dir/CGNS/avtCGNSFileFormat.C.o] Error 1 make[1]: *** [Utilities/VisItBridge/databases/CMakeFiles/vtkVisItDatabases.dir/all] Error 2 make: *** [all] Error 2