|
Boost : |
From: Jeremy Siek (jsiek_at_[hidden])
Date: 2001-04-09 10:59:06
Hrant,
Random thought: you may also need to turn off the /Gm (minimal rebuild)
flag.
On Fri, 6 Apr 2001, Yardumian, Hrant (HEYA) wrote:
HEYA> Jeremy:
HEYA>
HEYA> Thanks for the info on Default Constructible.
HEYA>
HEYA> I did add a copy constructor but it does not seem to make a difference.
HEYA>
HEYA> On the other matter of the "bugfix" I reported (adding the keyword public)
HEYA> did that sound right ?
HEYA>
HEYA>
HEYA> Hrant E. Yardumian
HEYA> Chevron Petroleum Technology Co.
HEYA> 6001 Bollinger Canyon Rd. E-1192
HEYA> San Ramon, CA 94583
HEYA>
HEYA> Phone:(925) 842-6265
HEYA> Fax :(925) 842-6283
HEYA>
HEYA> > -----Original Message-----
HEYA> > From: Jeremy Siek [SMTP:jsiek_at_[hidden]]
HEYA> > Sent: Wednesday, April 04, 2001 8:33 PM
HEYA> > To: 'boost_at_[hidden]'
HEYA> > Subject: RE: [boost] filtered_graph problem
HEYA> >
HEYA> > Hi Hrant,
HEYA> >
HEYA> > So there's two issues here:
HEYA> >
HEYA> > 1) the requirement for Default Constructible
HEYA> >
HEYA> > I'm afraid this requirement is intentional and will not
HEYA> > be removed. The reason for this is that the filter iterator
HEYA> > adaptor has to be Default Constructible to be a C++ Standard
HEYA> > conformant iterator, and the predicate
HEYA> > needs to be contained in the iterator by-value (for
HEYA> > performance reasons).
HEYA> >
HEYA> > 2) The crash on MSVC++
HEYA> >
HEYA> > I believe this is due to a bug in the MSVC++ compiler
HEYA> > with regards to generating the copy constructor
HEYA> > for your ColorTolerance class. I suggest adding
HEYA> > an explicit copy constructor to this class to
HEYA> > avoid the MSVC++ bug. Also, it would be great
HEYA> > if you could report this bug to Microsoft.
HEYA> >
HEYA> > Cheers,
HEYA> > Jeremy
HEYA> >
HEYA> >
HEYA> > On Wed, 4 Apr 2001, Yardumian, Hrant (HEYA) wrote:
HEYA> >
HEYA> > HEYA> Jeremy:
HEYA> > HEYA>
HEYA> > HEYA> Thanks for your response. I have included all the files below. The
HEYA> > most
HEYA> > HEYA> relevant
HEYA> > HEYA> ones are main.cpp, ColorTolerance.h and WeightTolerance.h. Boost
HEYA> > typedefs
HEYA> > HEYA> are
HEYA> > HEYA> in GraphTypes.h. If you can't open these files please let me know
HEYA> > and I
HEYA> > HEYA> will send
HEYA> > HEYA> them in a different form
HEYA> > HEYA>
HEYA> > HEYA> The attached code will crash on MSVC++.
HEYA> > HEYA>
HEYA> > HEYA> I should mention that related to filtered_graph, a colleague of mine
HEYA> > made a
HEYA> > HEYA> bugfix
HEYA> > HEYA> in boost/iterator_adaptors.hpp. In class
HEYA> > filter_iterator_generator, he
HEYA> > HEYA> added public
HEYA> > HEYA> before the BOOST_STATIC_CONSTANT line. The code was not even
HEYA> > compiling
HEYA> > HEYA> until that was done.
HEYA> > HEYA>
HEYA> > HEYA> Please note that:
HEYA> > HEYA> 1) in main.cpp, in the bottom of the listing where the filtered
HEYA> > graph is
HEYA> > HEYA> created,
HEYA> > HEYA> if the commented out line is used instead, (with only an edge
HEYA> > HEYA> predicate)
HEYA> > HEYA> then this code will work fine.
HEYA> > HEYA> 2) in ColorTolerance.h, if the commented out default constructor
HEYA> > is used,
HEYA> > HEYA> and
HEYA> > HEYA> the commented out code for operator() is used, the run will
HEYA> > not crash,
HEYA> > HEYA> but it will
HEYA> > HEYA> still not filter the graph appropriately.
HEYA> > HEYA>
HEYA> > HEYA>
HEYA> > HEYA> <<GraphTypes.h>> <<Output.h>> <<ColorTolerance.h>>
HEYA> > <<printGraph.h>>
HEYA> > HEYA> <<WeightTolerance.h>> <<main.cpp>> <<Output.cpp>>
HEYA> > <<FilteredGraph.dsp>>
HEYA> > HEYA> <<FilteredGraph.dsw>>
HEYA> > HEYA>
HEYA> > HEYA>
HEYA> > HEYA> Hrant E. Yardumian
HEYA> > HEYA> Chevron Petroleum Technology Co.
HEYA> > HEYA> 6001 Bollinger Canyon Rd. E-1192
HEYA> > HEYA> San Ramon, CA 94583
HEYA> > HEYA>
HEYA> > HEYA> Phone:(925) 842-6265
HEYA> > HEYA> Fax :(925) 842-6283
HEYA> > HEYA>
HEYA> > HEYA> To unsubscribe, send email to:
HEYA> > <mailto:boost-unsubscribe_at_[hidden]>
HEYA> > HEYA>
HEYA> > HEYA>
HEYA> > HEYA> Your use of Yahoo! Groups is subject to
HEYA> > http://docs.yahoo.com/info/terms/
HEYA> > HEYA>
HEYA> > HEYA>
HEYA> >
HEYA> > ----------------------------------------------------------------------
HEYA> > Jeremy Siek www: http://www.lsc.nd.edu/~jsiek/
HEYA> > Ph.D. Candidate email: jsiek_at_[hidden]
HEYA> > Univ. of Notre Dame work phone: (219) 631-3906
HEYA> > ----------------------------------------------------------------------
HEYA> >
HEYA> >
HEYA> >
HEYA> > To unsubscribe, send email to: <mailto:boost-unsubscribe_at_[hidden]>
HEYA> >
HEYA> >
HEYA> > Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
HEYA> >
HEYA> >
HEYA>
HEYA>
HEYA> To unsubscribe, send email to: <mailto:boost-unsubscribe_at_[hidden]>
HEYA>
HEYA>
HEYA> Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/
HEYA>
HEYA>
HEYA>
----------------------------------------------------------------------
Jeremy Siek www: http://www.lsc.nd.edu/~jsiek/
Ph.D. Candidate email: jsiek_at_[hidden]
Univ. of Notre Dame work phone: (219) 631-3906
----------------------------------------------------------------------
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk