Thanks. IMO its cleaner to rename here since we may be moving to replace it with base/ if anything, not vice-versa.
I'll look into the undefs as well after, thanks for mentioning that.
Any time we have a conflict like this, it probably indicates a circular dependency between Chromium and Blink. We should be careful here. While Chromium and Blink live in separate repositories, it is risky to add more includes of Chromium code from Blink. The risk is that we'll make it harder to change Chromium code. Folks hacking on src/base don't expect to need to worry about other repositories.
Ideally, that header should only be seen when WEBKIT_IMPLEMENTATION is undefined, and wtf headers should not be used in that case. The two shouldn't mix.
Did your experience happen to do with src/skia/ext?
Ideally, that header should only be seen when WEBKIT_IMPLEMENTATION is undefined, and wtf headers should not be used in that case. The two shouldn't mix.
Did your experience happen to do with src/skia/ext?
I don't understand why Internals.cpp is built without WEBKIT_IMPLEMENTATION. Since it is using WebCore headers, that seems like a mistake.
Anyways, you can see that we could keep pulling on this thread. We could use the LOG redefinition error to find and fix other "bugs".
I'm guessing that cleanup isn't really what you were looking to do?
I don't understand why Internals.cpp is built without WEBKIT_IMPLEMENTATION. Since it is using WebCore headers, that seems like a mistake.
Anyways, you can see that we could keep pulling on this thread. We could use the LOG redefinition error to find and fix other "bugs".
I'm guessing that cleanup isn't really what you were looking to do?
On Fri, Apr 5, 2013 at 10:09 AM, Darin Fisher <da...@chromium.org> wrote:
I don't understand why Internals.cpp is built without WEBKIT_IMPLEMENTATION. Since it is using WebCore headers, that seems like a mistake.
Anyways, you can see that we could keep pulling on this thread. We could use the LOG redefinition error to find and fix other "bugs".
I'm guessing that cleanup isn't really what you were looking to do?
OK, it wasn't really clear to me that something was inherently wrong in the Blink code in this scenario. I can look into this some more.
DRT uses WTF indeed, and it's wrong. I changed only the TestRunner library to not use WTF, as DRT is soon dead anyway.Note that since DRT builds in component mode, it only uses features from DRT that don't have runtime dependencies, e.g. OwnPtr<>. It should be easy to update the remaining files in DRT to not use wtf by replacing WTF with STL classes.
On Wed, Apr 10, 2013 at 11:47 AM, Jochen Eisinger <joc...@chromium.org> wrote:
DRT uses WTF indeed, and it's wrong. I changed only the TestRunner library to not use WTF, as DRT is soon dead anyway.Note that since DRT builds in component mode, it only uses features from DRT that don't have runtime dependencies, e.g. OwnPtr<>. It should be easy to update the remaining files in DRT to not use wtf by replacing WTF with STL classes.At first I though there was very little use of WTF, but there's more than I hoped (grepping for WTF wasn't as useful as for wtf/).Most of it is straightforward, until it's not. RefPtr has no stl equivalent, not sure how to replace that reasonably without src/base/. Which would again conflict with LOG. So I'm back to believing we should rename LOG to make the WTF removal possible in the future (for DRT or elsewhere).