From: ïÌÅÇ áÂÒÏÓÉÍÏ× (olegabr_at_[hidden])
Date: 2006-12-18 12:31:06
Christopher Kohlhoff wrote:
> On Sun, 17 Dec 2006 21:50:09 +0200, "Yuval Ronen"
> <ronen_yuval_at_[hidden]> said:
>> Yes, and to solve it I strongly suggest that you define
>> WIN32_LEAN_AND_MEAN as a global define for all you translation units. It
>> removes most of the junk inside windows.h, including winsock.h, as far
>> as I remember.
> Yes, that is a good idea.
Sorry, but I don't think so.
1) This issue will continuously frustrate new users, like it was with Serialization lib.
2) boost goal is to provide libraries that can be candidates to inclusion into the standard. I can not imagine that order of standard headers inclusion would affect my program well-formedness. It means that while the issue under discussion is not resolved - asio can not be targeted as a proposal for inclusion into the std. and it leads to the conclusion that it doesn't conform to boost goals. sad...
3) I can not see why you need to include all these platform dependent definitions in each header file. I believe that applying some kind of Bridge pattern would help to localize these platform dependent definitions/declarations in .cpp files only.
4) I understand that it is not an easy task and it is up to yours to consider my opinion, but I would appreciate if you include this issue into your TODO list.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk