|
Boost : |
From: Jason Shirk (jasonsh_at_[hidden])
Date: 2001-07-30 10:36:48
You have not updated boost\config.h for VC7. The most obvious problem
is that _MSC_VER is 1300 in VC7.
I removed the following for VC7:
# define BOOST_MSVC_STD_ITERATOR 1
# define BOOST_NO_TEMPLATED_ITERATOR_CONSTRUCTORS
# define BOOST_NO_STD_ALLOCATOR
# define BOOST_NO_STDC_NAMESPACE
The following could also be removed, but it requires the command line
switch /Zc:wchar_t:
# define BOOST_NO_INTRINSIC_WCHAR_T
This one could be removed if we didn't have a couple of bugs:
# define BOOST_NO_INCLASS_MEMBER_INITIALIZATION
I had to make a few other trivial changes in some other files as well,
they seem pretty obvious.
After getting regex to compile, I saw runtime failures in the regression
test. I don't have time to track those down. If those turn out to be a
compiler bug, please do let me know and I'll make sure we fix it.
Disclaimer: My changes were only tested using the regression tests. I
simply removed the workarounds that should have been addressed in VC7
(and put them back when we had some bugs :). Further independent
testing is advised.
Jason Shirk
VC++ Compiler Team
-----Original Message-----
From: PARK KISOO [mailto:aska_at_[hidden]]
Sent: Monday, July 30, 2001 1:47 AM
To: boost_at_[hidden]
Subject: [boost] regex compile problem with VC7
hello.
I tried to use regex in my recent work.
with Visual studio .net beta2 (is it vc7, isn't it?)
I had compile errors like this:
cl /c /nologo /ML /W3 /GX /Oityb1 /GF /Gy /I..\..\..\ /DWIN32
/DNDEBUG
/D_MBCS /D_LIB /YX /FD -Fpvc6/vc6-re300/vc6-re300.pch
-Fo./vc6/vc6-re300/ -Fdvc
6/vc6-re300.pdb ../src/c_regex_traits.cpp
c_regex_traits.cpp
..\..\..\boost\smart_ptr.hpp(371) : error C2065: 'T' : undeclared
identifier
..\..\..\boost\smart_ptr.hpp(371) : error C2687: cannot define a
nested UDT of a
template class out of line
..\..\..\boost\smart_ptr.hpp(371) : fatal error C1903: unable to
recover from previous error(s);
stopping compilation
NMAKE : fatal error U1077: 'cl' : return code '0x2'
Stop.
-- where in smart_ptr.hpp
370 template<typename T>
371 struct less< boost::shared_ptr<T> >
372 : binary_function<boost::shared_ptr<T>, boost::shared_ptr<T>,
bool>
373 {
374 bool operator()(const boost::shared_ptr<T>& a,
375 const boost::shared_ptr<T>& b) const
376 { return less<T*>()(a.get(),b.get()); }
377 };
anyway, with VC6 , It was compiled clearly.
Does anyone know what's wrong?
thanks
- Kisoo
Info: http://www.boost.org Unsubscribe:
<mailto:boost-unsubscribe_at_[hidden]>
Your use of Yahoo! Groups is subject to
http://docs.yahoo.com/info/terms/
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk