Temporary header file '/tmp/ifBThVip0S/dump1.h' with the following content will be compiled to create GCC translation unit dump: // add defines #define __STDC_VERSION__ 201710L #define _GXX_NULLPTR_T #define CLUTTER_ENABLE_COMPOSITOR_API 1 #define _REGEX_NELTS(n) #define _Atomic #define PACKED #define getaddrinfo_a(a,b,c,d) // add includes #include "/usr/include/opencv4/opencv2/imgproc/bindings.hpp" #include "/usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp" #include "/usr/include/opencv4/opencv2/imgproc/hal/hal.hpp" #include "/usr/include/opencv4/opencv2/imgproc/hal/interface.h" #include "/usr/include/opencv4/opencv2/imgproc/imgproc_c.h" #include "/usr/include/opencv4/opencv2/imgproc/segmentation.hpp" #include "/usr/include/opencv4/opencv2/imgproc/types_c.h" #include "/usr/include/opencv4/opencv2/imgproc.hpp" // add namespaces namespace cv{typedef int tmp_add_type_1;} cv::tmp_add_type_1 tmp_add_func_1(){return 0;}; namespace cv{namespace cuda{typedef int tmp_add_type_2;}} cv::cuda::tmp_add_type_2 tmp_add_func_2(){return 0;}; namespace cv{namespace cudev{typedef int tmp_add_type_3;}} cv::cudev::tmp_add_type_3 tmp_add_func_3(){return 0;}; namespace cv{namespace detail{typedef int tmp_add_type_4;}} cv::detail::tmp_add_type_4 tmp_add_func_4(){return 0;}; namespace cv{namespace details{typedef int tmp_add_type_5;}} cv::details::tmp_add_type_5 tmp_add_func_5(){return 0;}; namespace cv{namespace Error{typedef int tmp_add_type_6;}} cv::Error::tmp_add_type_6 tmp_add_func_6(){return 0;}; namespace cv{namespace hal{typedef int tmp_add_type_7;}} cv::hal::tmp_add_type_7 tmp_add_func_7(){return 0;}; namespace cv{namespace internal{typedef int tmp_add_type_8;}} cv::internal::tmp_add_type_8 tmp_add_func_8(){return 0;}; namespace cv{namespace ipp{typedef int tmp_add_type_9;}} cv::ipp::tmp_add_type_9 tmp_add_func_9(){return 0;}; namespace cv{namespace ogl{typedef int tmp_add_type_10;}} cv::ogl::tmp_add_type_10 tmp_add_func_10(){return 0;}; namespace cv{namespace samples{typedef int tmp_add_type_11;}} cv::samples::tmp_add_type_11 tmp_add_func_11(){return 0;}; namespace cv{namespace segmentation{typedef int tmp_add_type_12;}} cv::segmentation::tmp_add_type_12 tmp_add_func_12(){return 0;}; namespace cv{namespace sfinae{typedef int tmp_add_type_13;}} cv::sfinae::tmp_add_type_13 tmp_add_func_13(){return 0;}; namespace cv{namespace traits{typedef int tmp_add_type_14;}} cv::traits::tmp_add_type_14 tmp_add_func_14(){return 0;}; namespace cv{namespace traits{namespace internal{typedef int tmp_add_type_15;}}} cv::traits::internal::tmp_add_type_15 tmp_add_func_15(){return 0;}; namespace cv{namespace utils{typedef int tmp_add_type_16;}} cv::utils::tmp_add_type_16 tmp_add_func_16(){return 0;}; // add classes Cv16suf* tmp_add_class_0; Cv32suf* tmp_add_class_1; Cv64suf* tmp_add_class_2; CvBox2D* tmp_add_class_3; CvChain* tmp_add_class_4; CvChainPtReader* tmp_add_class_5; CvConnectedComp* tmp_add_class_6; CvContour* tmp_add_class_7; CvConvexityDefect* tmp_add_class_8; CvFont* tmp_add_class_9; CvGraph* tmp_add_class_10; CvGraphEdge* tmp_add_class_11; CvGraphScanner* tmp_add_class_12; CvGraphVtx* tmp_add_class_13; CvGraphVtx2D* tmp_add_class_14; CvHistogram* tmp_add_class_15; CvHuMoments* tmp_add_class_16; CvLineIterator* tmp_add_class_17; CvMat* tmp_add_class_18; CvMatND* tmp_add_class_19; CvMemBlock* tmp_add_class_20; CvMemStorage* tmp_add_class_21; CvMemStoragePos* tmp_add_class_22; CvMoments* tmp_add_class_23; CvNArrayIterator* tmp_add_class_24; CvPoint* tmp_add_class_25; CvPoint2D32f* tmp_add_class_26; CvPoint2D64f* tmp_add_class_27; CvPoint3D32f* tmp_add_class_28; CvPoint3D64f* tmp_add_class_29; CvRect* tmp_add_class_30; CvScalar* tmp_add_class_31; CvSeq* tmp_add_class_32; CvSeqBlock* tmp_add_class_33; CvSeqReader* tmp_add_class_34; CvSeqWriter* tmp_add_class_35; CvSet* tmp_add_class_36; CvSetElem* tmp_add_class_37; CvSize* tmp_add_class_38; CvSize2D32f* tmp_add_class_39; CvSlice* tmp_add_class_40; CvSparseMat* tmp_add_class_41; CvSparseMatIterator* tmp_add_class_42; CvSparseNode* tmp_add_class_43; CvTermCriteria* tmp_add_class_44; CvTreeNodeIterator* tmp_add_class_45; _G_fpos64_t* tmp_add_class_46; _G_fpos_t* tmp_add_class_47; _IO_cookie_io_functions_t* tmp_add_class_48; _IplConvKernel* tmp_add_class_49; _IplConvKernelFP* tmp_add_class_50; _IplImage* tmp_add_class_51; _IplROI* tmp_add_class_52; The GCC parameters: gcc -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w "/tmp/ifBThVip0S/dump1.h" -I/usr/include/opencv4 -I/usr/include/arm-linux-gnueabihf/opencv4/opencv2 In file included from /tmp/ifBThVip0S/dump1.h:12: /usr/include/opencv4/opencv2/imgproc/bindings.hpp:19:1: error: ‘CV_WRAP’ does not name a type 19 | CV_WRAP static inline | ^~~~~~~ /usr/include/opencv4/opencv2/imgproc/bindings.hpp:19:1: note: the macro ‘CV_WRAP’ had not yet been defined In file included from /usr/include/opencv4/opencv2/imgproc/hal/hal.hpp:4, from /tmp/ifBThVip0S/dump1.h:14: /usr/include/opencv4/opencv2/core/cvdef.h:460: note: it was later defined here 460 | #define CV_WRAP | In file included from /tmp/ifBThVip0S/dump1.h:13: /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:70:9: error: ‘uchar’ does not name a type; did you mean ‘char’? 70 | uchar t; | ^~~~~ | char /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:80:10: error: ‘vector’ in namespace ‘std’ does not name a template type 80 | std::vector vtcs; | ^~~~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:1:1: note: ‘std::vector’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include 1 | /*M/////////////////////////////////////////////////////////////////////////////////////// /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:81:10: error: ‘vector’ in namespace ‘std’ does not name a template type 81 | std::vector edges; | ^~~~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:81:5: note: ‘std::vector’ is defined in header ‘’; did you forget to ‘#include ’? 81 | std::vector edges; | ^~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp: In member function ‘void cv::detail::GCGraph::create(unsigned int, unsigned int)’: /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:102:5: error: ‘vtcs’ was not declared in this scope 102 | vtcs.reserve( vtxCount ); | ^~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:103:5: error: ‘edges’ was not declared in this scope 103 | edges.reserve( edgeCount + 2 ); | ^~~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp: In member function ‘int cv::detail::GCGraph::addVtx()’: /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:112:5: error: ‘vtcs’ was not declared in this scope 112 | vtcs.push_back(v); | ^~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp: In member function ‘void cv::detail::GCGraph::addEdges(int, int, TWeight, TWeight)’: /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:119:31: error: ‘vtcs’ was not declared in this scope 119 | CV_Assert( i>=0 && i<(int)vtcs.size() ); | ^~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:124:10: error: ‘edges’ was not declared in this scope 124 | if( !edges.size() ) | ^~~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:131:26: error: ‘edges’ was not declared in this scope 131 | vtcs[i].first = (int)edges.size(); | ^~~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp: In member function ‘void cv::detail::GCGraph::addTermWeights(int, TWeight, TWeight)’: /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:144:31: error: ‘vtcs’ was not declared in this scope 144 | CV_Assert( i>=0 && i<(int)vtcs.size() ); | ^~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp: In member function ‘TWeight cv::detail::GCGraph::maxFlow()’: /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:158:16: error: ‘vtcs’ was not declared in this scope 158 | CV_Assert(!vtcs.empty()); | ^~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:159:16: error: ‘edges’ was not declared in this scope 159 | CV_Assert(!edges.empty()); | ^~~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:167:10: error: ‘vector’ is not a member of ‘std’ 167 | std::vector orphans; | ^~~~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:167:10: note: ‘std::vector’ is defined in header ‘’; did you forget to ‘#include ’? /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:167:20: error: expected primary-expression before ‘*’ token 167 | std::vector orphans; | ^ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:167:21: error: expected primary-expression before ‘>’ token 167 | std::vector orphans; | ^ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:167:23: error: ‘orphans’ was not declared in this scope 167 | std::vector orphans; | ^~~~~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:194:9: error: ‘uchar’ was not declared in this scope; did you mean ‘char’? 194 | uchar vt; | ^~~~~ | char /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:202:17: error: ‘vt’ was not declared in this scope; did you mean ‘v’? 202 | vt = v->t; | ^~ | v /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:301:30: error: ‘INT_MAX’ was not declared in this scope 301 | int d, minDist = INT_MAX; | ^~~~~~~ /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:1:1: note: ‘INT_MAX’ is defined in header ‘’; did you forget to ‘#include ’? +++ |+#include 1 | /*M/////////////////////////////////////////////////////////////////////////////////////// /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:303:13: error: ‘vt’ was not declared in this scope; did you mean ‘v2’? 303 | vt = v2->t; | ^~ | v2 /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp: In member function ‘bool cv::detail::GCGraph::inSourceSegment(int)’: /usr/include/opencv4/opencv2/imgproc/detail/gcgraph.hpp:386:31: error: ‘vtcs’ was not declared in this scope 386 | CV_Assert( i>=0 && i<(int)vtcs.size() ); | ^~~~