Opened 9 years ago
Closed 9 years ago
#6110 closed defect (fixed)
Hidden overloaded virtual functions in GNM
Reported by: | Even Rouault | Owned by: | warmerdam |
---|---|---|---|
Priority: | normal | Milestone: | |
Component: | default | Version: | unspecified |
Severity: | normal | Keywords: | |
Cc: | bishop |
Description
Dmitry, a number of virtual members in GNM classes overload methods of a base class but with a different signature. This is kind of annoying as it raises warnings :
./gnmfile.h:53:20: warning: 'GNMFileNetwork::CreateMetadataLayer' hides overloaded virtual function [-Woverloaded-virtual] virtual CPLErr CreateMetadataLayer( const char* pszFilename, int nVersion, ^ /home/even/gdal_trunk/gdal/gnm/gnm.h:412:20: note: hidden overloaded virtual function 'GNMGenericNetwork::CreateMetadataLayer' declared here: type mismatch at 1st parameter ('GDALDataset *const' vs 'const char *') virtual CPLErr CreateMetadataLayer( GDALDataset* const pDS, int nVersion, ^ In file included from gnmfiledriver.cpp:33: ./gnmfile.h:58:20: warning: 'GNMFileNetwork::CreateGraphLayer' hides overloaded virtual function [-Woverloaded-virtual] virtual CPLErr CreateGraphLayer( const char* pszFilename, ^ /home/even/gdal_trunk/gdal/gnm/gnm.h:416:20: note: hidden overloaded virtual function 'GNMGenericNetwork::CreateGraphLayer' declared here: different number of parameters (1 vs 2) virtual CPLErr CreateGraphLayer( GDALDataset* const pDS ); ^ In file included from gnmfiledriver.cpp:33: ./gnmfile.h:61:20: warning: 'GNMFileNetwork::CreateFeaturesLayer' hides overloaded virtual function [-Woverloaded-virtual] virtual CPLErr CreateFeaturesLayer( const char* pszFilename, ^ /home/even/gdal_trunk/gdal/gnm/gnm.h:417:20: note: hidden overloaded virtual function 'GNMGenericNetwork::CreateFeaturesLayer' declared here: different number of parameters (1 vs 2) virtual CPLErr CreateFeaturesLayer( GDALDataset* const pDS ); ^ 3 warnings generated. In file included from gnmfilenetwork.cpp:32: ./gnmfile.h:53:20: warning: 'GNMFileNetwork::CreateMetadataLayer' hides overloaded virtual function [-Woverloaded-virtual] virtual CPLErr CreateMetadataLayer( const char* pszFilename, int nVersion, ^ /home/even/gdal_trunk/gdal/gnm/gnm.h:412:20: note: hidden overloaded virtual function 'GNMGenericNetwork::CreateMetadataLayer' declared here: type mismatch at 1st parameter ('GDALDataset *const' vs 'const char *') virtual CPLErr CreateMetadataLayer( GDALDataset* const pDS, int nVersion, ^ In file included from gnmfilenetwork.cpp:32: ./gnmfile.h:58:20: warning: 'GNMFileNetwork::CreateGraphLayer' hides overloaded virtual function [-Woverloaded-virtual] virtual CPLErr CreateGraphLayer( const char* pszFilename, ^ /home/even/gdal_trunk/gdal/gnm/gnm.h:416:20: note: hidden overloaded virtual function 'GNMGenericNetwork::CreateGraphLayer' declared here: different number of parameters (1 vs 2) virtual CPLErr CreateGraphLayer( GDALDataset* const pDS ); ^ In file included from gnmfilenetwork.cpp:32: ./gnmfile.h:61:20: warning: 'GNMFileNetwork::CreateFeaturesLayer' hides overloaded virtual function [-Woverloaded-virtual] virtual CPLErr CreateFeaturesLayer( const char* pszFilename, ^ /home/even/gdal_trunk/gdal/gnm/gnm.h:417:20: note: hidden overloaded virtual function 'GNMGenericNetwork::CreateFeaturesLayer' declared here: different number of parameters (1 vs 2) virtual CPLErr CreateFeaturesLayer( GDALDataset* const pDS ); ^
Potential solution using "using" keyword, or renaming the overloaded methods
Note:
See TracTickets
for help on using tickets.
Fixed in r30553