CEF3 pollutes the global namespace leading to build errors

Having problems with building or using CEF's C/C++ APIs? This forum is here to help. Please do not post bug reports or feature requests here.

CEF3 pollutes the global namespace leading to build errors

Postby jmuulian » Fri Jul 29, 2016 7:56 am

Hi all. I'm building my first CEF3 C++ project in order to evaluate it for integration into a larger codebase.

I'm accessing CEF3's interface via "include/cef_app.h". Unfortunately, CEF3 does not live in its own namespace, leading to pollution of the global namespace with basic types such as uint32, int64, etc. This is a problem for me because the codebase I wish to integrate CEF3 into contains its own definitions for these basic types. This leads to numerous "ambiguous symbol" build errors.

I have attempted including CEF within a locally-defined namespace cef, but this does not work because CEF3 makes use of macros

Global namespace + macros is an annoying combination, which I imagine causes issues for users. Is there a known workaround for this? If not I will need to devise a wrapper in my codebase where my local basic types aren't visible to the code which calls CEF3.

Thanks for any advice.
jmuulian
Newbie
 
Posts: 1
Joined: Fri Jul 29, 2016 7:40 am

Return to Support Forum

Who is online

Users browsing this forum: No registered users and 84 guests