Updated by Alexander Shishkov about 13 years ago

clang++ spits out the following error when trying to compile. It then stops because there are too many such errors.

The fix should be easy - just reorder the header file.

##### ERROR #####

In file included from /home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/opencv.hpp:53:
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1306:84: error: use of default argument to function 'Params' that is declared later in class 'Params'
GoodFeaturesToTrackDetector( [[GoodFeaturesToTrackDetector]]( const GoodFeaturesToTrackDetector::Params& [[GoodFeaturesToTrackDetector]]::Params& params=GoodFeaturesToTrackDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1293:32: note: default argument declared here
Params( int maxCorners=1000, double qualityLevel=0.01, double minDistance=1.,
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1306:84: error: use of default argument to function 'Params' that is declared later in class 'Params'
GoodFeaturesToTrackDetector( [[GoodFeaturesToTrackDetector]]( const GoodFeaturesToTrackDetector::Params& [[GoodFeaturesToTrackDetector]]::Params& params=GoodFeaturesToTrackDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1293:58: note: default argument declared here
Params( int maxCorners=1000, double qualityLevel=0.01, double minDistance=1.,
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1306:84: error: use of default argument to function 'Params' that is declared later in class 'Params'
GoodFeaturesToTrackDetector( [[GoodFeaturesToTrackDetector]]( const GoodFeaturesToTrackDetector::Params& [[GoodFeaturesToTrackDetector]]::Params& params=GoodFeaturesToTrackDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1293:83: note: default argument declared here
Params( int maxCorners=1000, double qualityLevel=0.01, double minDistance=1.,
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1306:84: error: use of default argument to function 'Params' that is declared later in class 'Params'
GoodFeaturesToTrackDetector( [[GoodFeaturesToTrackDetector]]( const GoodFeaturesToTrackDetector::Params& [[GoodFeaturesToTrackDetector]]::Params& params=GoodFeaturesToTrackDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1294:31: note: default argument declared here
int blockSize=3, bool useHarrisDetector=false, double k=0.04 );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1306:84: error: use of default argument to function 'Params' that is declared later in class 'Params'
GoodFeaturesToTrackDetector( [[GoodFeaturesToTrackDetector]]( const GoodFeaturesToTrackDetector::Params& [[GoodFeaturesToTrackDetector]]::Params& params=GoodFeaturesToTrackDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1294:57: note: default argument declared here
int blockSize=3, bool useHarrisDetector=false, double k=0.04 );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1306:84: error: use of default argument to function 'Params' that is declared later in class 'Params'
GoodFeaturesToTrackDetector( [[GoodFeaturesToTrackDetector]]( const GoodFeaturesToTrackDetector::Params& [[GoodFeaturesToTrackDetector]]::Params& params=GoodFeaturesToTrackDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1294:73: note: default argument declared here
int blockSize=3, bool useHarrisDetector=false, double k=0.04 );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1399:70: error: use of default argument to function 'Params' that is declared later in class 'Params'
DenseFeatureDetector( [[DenseFeatureDetector]]( const DenseFeatureDetector::Params& [[DenseFeatureDetector]]::Params& params=DenseFeatureDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1386:40: note: default argument declared here
Params( float initFeatureScale=1.f, int featureScaleLevels=1, float featureScaleMul=0.1f,
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1399:70: error: use of default argument to function 'Params' that is declared later in class 'Params'
DenseFeatureDetector( [[DenseFeatureDetector]]( const DenseFeatureDetector::Params& [[DenseFeatureDetector]]::Params& params=DenseFeatureDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1386:68: note: default argument declared here
Params( float initFeatureScale=1.f, int featureScaleLevels=1, float featureScaleMul=0.1f,
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1399:70: error: use of default argument to function 'Params' that is declared later in class 'Params'
DenseFeatureDetector( [[DenseFeatureDetector]]( const DenseFeatureDetector::Params& [[DenseFeatureDetector]]::Params& params=DenseFeatureDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1386:93: note: default argument declared here
Params( float initFeatureScale=1.f, int featureScaleLevels=1, float featureScaleMul=0.1f,
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1399:70: error: use of default argument to function 'Params' that is declared later in class 'Params'
DenseFeatureDetector( [[DenseFeatureDetector]]( const DenseFeatureDetector::Params& [[DenseFeatureDetector]]::Params& params=DenseFeatureDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1387:32: note: default argument declared here
int initXyStep=6, int initImgBound=0, bool varyXyStepWithScale=true, bool varyImgBoundWithScale=false );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1399:70: error: use of default argument to function 'Params' that is declared later in class 'Params'
DenseFeatureDetector( [[DenseFeatureDetector]]( const DenseFeatureDetector::Params& [[DenseFeatureDetector]]::Params& params=DenseFeatureDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1387:52: note: default argument declared here
int initXyStep=6, int initImgBound=0, bool varyXyStepWithScale=true, bool varyImgBoundWithScale=false );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1399:70: error: use of default argument to function 'Params' that is declared later in class 'Params'
DenseFeatureDetector( [[DenseFeatureDetector]]( const DenseFeatureDetector::Params& [[DenseFeatureDetector]]::Params& params=DenseFeatureDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1387:80: note: default argument declared here
int initXyStep=6, int initImgBound=0, bool varyXyStepWithScale=true, bool varyImgBoundWithScale=false );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1399:70: error: use of default argument to function 'Params' that is declared later in class 'Params'
DenseFeatureDetector( [[DenseFeatureDetector]]( const DenseFeatureDetector::Params& [[DenseFeatureDetector]]::Params& params=DenseFeatureDetector::Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:1387:113: note: default argument declared here
int initXyStep=6, int initImgBound=0, bool varyXyStepWithScale=true, bool varyImgBoundWithScale=false );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:2463:51: error: use of default argument to function 'Params' that is declared later in class 'Params'
OneWayDescriptorMatcher( [[OneWayDescriptorMatcher]]( const Params& params=Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:2447:33: note: default argument declared here
Params( int poseCount = POSE_COUNT,
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:2463:51: error: use of default argument to function 'Params' that is declared later in class 'Params'
OneWayDescriptorMatcher( [[OneWayDescriptorMatcher]]( const Params& params=Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:2448:34: note: default argument declared here
Size patchSize = Size(PATCH_WIDTH, PATCH_HEIGHT),
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:2463:51: error: use of default argument to function 'Params' that is declared later in class 'Params'
OneWayDescriptorMatcher( [[OneWayDescriptorMatcher]]( const Params& params=Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:2449:38: note: default argument declared here
string pcaFilename = string(),
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:2463:51: error: use of default argument to function 'Params' that is declared later in class 'Params'
OneWayDescriptorMatcher( [[OneWayDescriptorMatcher]]( const Params& params=Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:2450:36: note: default argument declared here
string trainPath = string(), string trainImagesList = string(),
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:2463:51: error: use of default argument to function 'Params' that is declared later in class 'Params'
OneWayDescriptorMatcher( [[OneWayDescriptorMatcher]]( const Params& params=Params() );
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:2450:71: note: default argument declared here
string trainPath = string(), string trainImagesList = string(),
^
/home/atom/work/ijs/calibration/../ocv/lib/include/opencv2/features2d/features2d.hpp:2463:51: error: use of default argument to function 'Params' that is declared later in class 'Params'
OneWayDescriptorMatcher( [[OneWayDescriptorMatcher]]( const Params& params=Params() );

Back