Temporary header file '/tmp/RCoaGjHPH_/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/time.h" #include "/usr/include/stdint.h" #include "/usr/include/rados/objclass.h" The GCC parameters: gcc -fdump-lang-raw -fkeep-inline-functions -c -x c++ -fpermissive -w "/tmp/RCoaGjHPH_/dump1.h" -I/usr/include/linux/iio In file included from /tmp/RCoaGjHPH_/dump1.h:14: /usr/include/rados/objclass.h:77:11: error: ‘ceph’ has not been declared 77 | class ceph::buffer::list *inbl, class ceph::buffer::list *outbl); | ^~~~ /usr/include/rados/objclass.h:77:43: error: ‘ceph’ has not been declared 77 | class ceph::buffer::list *inbl, class ceph::buffer::list *outbl); | ^~~~ /usr/include/rados/objclass.h:123:70: error: ‘ceph’ has not been declared 123 | extern int cls_cxx_read(cls_method_context_t hctx, int ofs, int len, ceph::bufferlist *bl); | ^~~~ /usr/include/rados/objclass.h:123:87: error: expected ‘,’ or ‘...’ before ‘*’ token 123 | extern int cls_cxx_read(cls_method_context_t hctx, int ofs, int len, ceph::bufferlist *bl); | ^ /usr/include/rados/objclass.h:133:71: error: ‘ceph’ has not been declared 133 | extern int cls_cxx_write(cls_method_context_t hctx, int ofs, int len, ceph::bufferlist *bl); | ^~~~ /usr/include/rados/objclass.h:133:88: error: expected ‘,’ or ‘...’ before ‘*’ token 133 | extern int cls_cxx_write(cls_method_context_t hctx, int ofs, int len, ceph::bufferlist *bl); | ^ /usr/include/rados/objclass.h:143:29: error: ‘ceph’ has not been declared 143 | ceph::bufferlist *outbl); | ^~~~ /usr/include/rados/objclass.h:143:46: error: expected ‘,’ or ‘...’ before ‘*’ token 143 | ceph::bufferlist *outbl); | ^ /usr/include/rados/objclass.h:153:29: error: ‘ceph’ has not been declared 153 | ceph::bufferlist *inbl); | ^~~~ /usr/include/rados/objclass.h:153:46: error: expected ‘,’ or ‘...’ before ‘*’ token 153 | ceph::bufferlist *inbl); | ^ /usr/include/rados/objclass.h:163:43: error: ‘string’ in namespace ‘std’ does not name a type 163 | const std::string &key, ceph::bufferlist *outbl); | ^~~~~~ /usr/include/rados/objclass.h:10:1: note: ‘std::string’ is defined in header ‘’; did you forget to ‘#include ’? 9 | #include "buffer.h" +++ |+#include 10 | /usr/include/rados/objclass.h:163:56: error: ‘ceph’ has not been declared 163 | const std::string &key, ceph::bufferlist *outbl); | ^~~~ /usr/include/rados/objclass.h:163:73: error: expected ‘,’ or ‘...’ before ‘*’ token 163 | const std::string &key, ceph::bufferlist *outbl); | ^ /usr/include/rados/objclass.h:173:43: error: ‘string’ in namespace ‘std’ does not name a type 173 | const std::string &key, ceph::bufferlist *inbl); | ^~~~~~ /usr/include/rados/objclass.h:173:38: note: ‘std::string’ is defined in header ‘’; did you forget to ‘#include ’? 173 | const std::string &key, ceph::bufferlist *inbl); | ^~~ /usr/include/rados/objclass.h:173:56: error: ‘ceph’ has not been declared 173 | const std::string &key, ceph::bufferlist *inbl); | ^~~~ /usr/include/rados/objclass.h:173:73: error: expected ‘,’ or ‘...’ before ‘*’ token 173 | const std::string &key, ceph::bufferlist *inbl); | ^