New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 774117 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner: ----
Closed: Nov 2017
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocking:
issue 746953



Sign in to add a comment

webrtc and leveldatabase headers leak the same internal macros -> collision

Project Member Reported by brat...@opera.com, Oct 12 2017

Issue description

Both webrtc (third_party/webrtc/base/thread_checker.h) and leveldatabase (third_party/leveldatabase/src/port/thread_annoations.h) leak the same macros so using them together is complicated.

I came upon this conflict when trying to make jumbo (merging many cc files for much higher compilation performance) work in content. I have a local hack that just undefs a lot of macros after including leveldatabase and webrtc headers:

#undef EXCLUSIVE_LOCKS_REQUIRED
#undef SHARED_LOCKS_REQUIRED
#undef LOCKS_EXCLUDED
#undef LOCK_RETURNED
#undef LOCKABLE
#undef SCOPED_LOCKABLE
#undef EXCLUSIVE_LOCK_FUNCTION
#undef SHARED_LOCK_FUNCTION
#undef EXCLUSIVE_TRYLOCK_FUNCTION
#undef SHARED_TRYLOCK_FUNCTION
#undef UNLOCK_FUNCTION
#undef NO_THREAD_SAFETY_ANALYSIS
 

Comment 1 by brat...@opera.com, Nov 15 2017

Status: Fixed (was: Untriaged)
It seems webrtc has stopped leaking these macros. Yay. Closing as Fixed.

Sign in to add a comment