Boost logo

Boost :

From: dwolfram_at_[hidden]
Date: 2001-01-22 21:31:46

Hi Jeremy,

Thank you for your detailed reply. We are very interested to hear the
first-hand views of library developers.

You may be interested to know that the following conformance-related
issues have been resolved for Visual C++.NET:

Q240862 BUG: C2555 On Virtual Functions with Covariant Return Types
Q240871 BUG: Explicitly Specified Template Functions Not Overloaded
Q241569 BUG: C2258 and C2252 on in Place Initialization of Static
Const Members
Q241706 BUG: C2123 on Function Try Block Syntax
Q241940 BUG: C2954 on using class template as template parameter
Q242192 BUG: uncaught_exception() Always Returns False
Q243444 BUG: CSTDLIB Does Not Define the Namespace STD
Q167733 PRB: Operator New Doesn't Throw bad_alloc Exception on Failure
For loop variable scope.

I shall ensure that your comments are discussed by the team.

David Wolfram
Visual C++ Compiler Team

--- In boost_at_[hidden], Jeremy Siek <jsiek_at_l...> wrote:
> Hi David,
> Thank you very much for doing this survey! I really hope that you
> action based on the responses.
> On Fri, 19 Jan 2001 dwolfram_at_m... wrote:
> dwolfr> 1. Which third-party libraries do you use?
> I use Blitz++, the Matrix Template Library (MTL), the boost
> (especially the graph library), and STLport.
> dwolfr> 2. If you cannot use Visual C++ with these libraries, what
are the
> dwolfr> causes of this? For example, does the library require
> dwolfr> template specialization support? Do other issues also
prevent you
> dwolfr> from using the library with Visual C++?
> Blitz++ uses partial specialization. The Boost Graph Library and
also MTL
> have lots of #ifdef workarounds for VC++ because of the lack of
> spec. Also, the next version of MTL (BTW, I'm the author) will
> lots of wonderful new features, but they all require partial spec.
> dwolfr> 3. If you are a library developer, what workarounds or
> dwolfr> constraints were required for compatibility with Visual
C++? What
> dwolfr> were the most significant ones? Did the workarounds or
> dwolfr> have performance impacts?
> The partial specialization is the number one issue. However, there
> others. Standard library conformance is also VERY important,
> things like iterator_traits.
> Also, for performance, the lightweight object optimization done by
> the KAI C++ compiler greatly improves performance for modern C++
> template libraries. I would like to see VC++ use this optimization
> (or use some equivalent optimization).
> In addition, I've run into lots of random internal compiler errors
> using/creating template-heavy libraries. I'm afraid these errors
are very
> difficult to characterize.
> I probably spend on average 5 hours every week doing workarounds
> for VC++ bugs. My productivity would be greatly enhanced if this
> were no longer the case.
> dwolfr> 4. Are you mainly a "consumer" or "producer" of library
> Mainly a producer, though often times the libraries I produce are
> "in the middle", and use other libraries.
> dwolfr> I hope to hear from you, and shall summarize the replies if
they are
> dwolfr> numerous.
> Great, thanks!
> Jeremy
> --------------------------------------------------------------------

>  Jeremy Siek                        www:
>  Ph.D. Candidate                  email: jsiek_at_l...
>  Univ. of Notre Dame         work phone: (219) 631-3906
> --------------------------------------------------------------------

Boost list run by bdawes at, gregod at, cpdaniel at, john at