Submitting compiler bugs to Microsoft (was: Converting loop to using boost::lambda wherecontainers has boost::shared_ptrs)
-----Original Message----- From: boost-users-bounces@lists.boost.org [mailto:boost-users-bounces@lists.boost.org] On Behalf Of Christian Henning Sent: Sunday, 20 May 2007 8:41 AM To: boost-users@lists.boost.org Subject: Re: [Boost-users] Converting loop to using boost::lambda wherecontainers has boost::shared_ptrs
I am glad to know I still the have skill of breaking compilers. :)
Well, I seem to have similar skills. The code below crashes my compiler ( VC7.1 SP 1), as well.
void print( const std::string& s ) { std::cout << s; }
int main ( int, char** ) { typedef boost::shared_ptr<A> A_ptr_t; typedef boost::shared_ptr<D> D_ptr_t;
typedef std::vector < boost::shared_ptr<Base> > Data_t; Data_t m_data;
A_ptr_t a ( new A ( 50 ) ); D_ptr_t d ( new D ( 30 ) );
m_data.push_back ( a ); m_data.push_back ( d );
boost::uint32_t indent_value = 4;
// this works boost::bind( &print , boost::bind( &Base::to_String , A_ptr_t( new A( 5 ) ) , indent_value ))();
// this doesn't work - ICE std::for_each ( m_data.begin(), m_data.end(), boost::bind( &print , boost::bind( &Base::to_String , boost::bind::_1 , indent_value )));
return 0; }
I know this is not the solution. I'm still using a seperate function print() for outputting. I will keep trying to solve that one.
On the other hand it would be nice if boost::bind comes some handy function like the print(). Just a thought.
Christian
To post a bug report on Microsoft Visual Studio, you need to register (with Microsoft Passport, ie., hotmail style user account). Go to http://connect.microsoft.com, log in or register, and then navigate to https://connect.microsoft.com/feedback/default.aspx?SiteID=210&wa=wsigni n1.0 You need to search feedback before you can post a new bug. Regards, Peter. Warning: Copyright ResMed. Where the contents of this email and/or attachment includes materials prepared by ResMed, the use of those materials is subject exclusively to the conditions of engagement between ResMed and the intended recipient. This communication is confidential and may contain legally privileged information. By the use of email over the Internet or other communication systems, ResMed is not waiving either confidentiality of, or legal privilege in,the content of the email and of any attachments. If the recipient of this message is not the intended addressee, please call ResMed immediately on +61 2 8884 1000 Sydney, Australia.
Thanks for the hint. I'm sure there must be some Microsoft guys
reading this mailing list.
This is the minimal code that breaks the compiler. Although this code
is illegal I don't think the compiler should just ICE.
#include
Actually I think they are strangely absent (or quiet.) -----Original Message----- From: boost-users-bounces@lists.boost.org on behalf of Christian Henning Sent: Sun 5/20/2007 6:47 PM To: Peter Dulimov; boost-users@lists.boost.org Subject: Re: [Boost-users] Submitting compiler bugs to Microsoft (was:Converting loop to using boost::lambda wherecontainers hasboost::shared_ptrs) Thanks for the hint. I'm sure there must be some Microsoft guys reading this mailing list.
Peter Dulimov wrote:
To post a bug report on Microsoft Visual Studio, you need to register (with Microsoft Passport, ie., hotmail style user account). Go to http://connect.microsoft.com, log in or register, and then navigate to https://connect.microsoft.com/feedback/default.aspx?SiteID=210&wa=wsigni n1.0
You need to search feedback before you can post a new bug.
Hope you have better luck with that than I did. I posted a bug report there for ATL (threading safety issue in one of their cache classes) that was (and still is) present in both 7.1 and 8.0... and got a "we aren't working on ATL in Orcas..." response. -Chris
participants (4)
-
Christian Henning
-
Christopher Woods
-
Peter Dulimov
-
Sohail Somani