An error That seems to elude me in compiling Ceph

Willem Jan Withagen wjw at digiware.nl
Tue May 17 18:04:30 UTC 2016


Hi,

I got this snippet of code that bombs out during linking....
if is from
https://github.com/ceph/ceph/blob/master/src/rgw/rgw_file.h#L805

     /* find or create an RGWFileHandle */
     LookupFHResult lookup_fh(RGWFileHandle* parent, const char *name,
                              const uint32_t flags = 
RGWFileHandle::FLAG_NONE) {
       using std::get;

       // This seems like a Clang compiler error.
       // It result in irgw::RGWFileHandle::FLAG_NONE being undefined 
during linking.
       // LookupFHResult fhr { nullptr, RGWFileHandle::FLAG_NONE };
       LookupFHResult fhr { nullptr, 0 };

And the complaint in the end during linking that
	rgw:RGWFileHandle::FLAG_NONE
is unknown. But as far as I know it is defined on line 255 in the same file.

And even stranger.... 2 lines back there is also a reference to that 
same variable.

Now the only modification I have to do is replace 
RGWFileHandle::FLAG_NONE on that
last line of the snippet to get things going again.

And note that references to the other defined vars around line 255 do 
not suffer from
the same problem.

Can anybody explain to me what I'm missing?

Thanx,
--WjW




More information about the freebsd-toolchain mailing list