1. So how much faster is the linking? I mean the release build linking was the slow one. Debug linking wasn't that bad.
2. net is dependent of base.. so you could not swap base by itself, right? 3. The native windows resource management will need to change in the multiple dlls world. ATL has a solution so does MFC so things just work but recall looking at them many years ago and they were fairly complicated. Maybe they will look simple now that I've seen the guts of a browser. In general I think there is much that would need to change for clean separation to work at the point that you could swap modules. Maybe you have done this already. For example, consider an exported class Foo in foo.h: class Foo { public: Foo(Bar& ); bool DoTheThing(int x); private: void* window_; }; and say it changes to: class Foo { public: Foo(Bar& ); bool DoTheThing(int x); private: void* window_; int style_; }; DLLs built with different versions of this header will in fact coexists (load) because none of the member functions changed, however it we know have a bug because for the older DLLs Foo's size is 4 bytes and for the newer DLLs Foo's size is 8 bytes. In fact when we mix them now we have a really hard bug because the DLL that implements Foo is accessing memory (for style_ ) that was not allocated. For this to really work the exposed classes need to have no member variables, which leads us to pimpl or to pure interfaces and to factories. --~--~---------~--~----~------------~-------~--~----~ Chromium Developers mailing list: chromium-dev@googlegroups.com View archives, change email options, or unsubscribe: http://groups.google.com/group/chromium-dev -~----------~----~----~----~------~----~------~--~---