I have searched already in this list and the dev list for these MSVC compiler errors, but none of the solutions have worked so far. I have turned off precompiled headers, built clean, tried defining BOOST_NO_MEMBER_TEMPLATES before including "boost/lambda/lambda.hpp" (or "boost/lambda/bind.hpp"), and I still always get this error under Visual C++ 6 SP5 (Win2k Pro SP3), in both the Debug and Release configurations: Deleting intermediate files and output files for project 'dWin - Win32 Release'. --------------------Configuration: dWin - Win32 Release--------------- ----- Compiling... dwin-button.cpp dwin-common-control.cpp dwin-dialog.cpp C:\TMP\BOOST\BOOST_1_28_0\boost/lambda/detail/lambda_fwd.hpp(31) : fatal error C1001: INTERNAL COMPILER ERROR (compiler file 'msc1.cpp', line 1794) Please choose the Technical Support command on the Visual C++ Help menu, or open the Technical Support help file for more information Not sure what I'm doing wrong..
On Wednesday 21 August 2002 3:10 pm, you wrote:
I have searched already in this list and the dev list for these MSVC compiler errors
See http://www.boost.org/status/cs-win32.html Lambda does not and will not compile on MSVC until MSVC 7.1 is released (I'm told that it does work in this environment). - Dale.
See http://www.boost.org/status/cs-win32.html
Lambda does not and will not compile on MSVC until MSVC 7.1 is released (I'm told that it does work in this environment).
- Dale.
wow, thanks for the quick reply! ah ok, guess I'll have to wait for their update. by the way, I read most of the lambda lib doc, but I was wondering if it works just like a lambda expression in other languages like lisp... fairly simple use: I have a Dialog class with a close() method and a Button class with a on_click event (which I guess would be the lambda function), and I'd like my button object to close the dialog.. so that I'd have.. class mydialog : public virtual Dialog { public: Dialog() { mybutton.on_click = lambda({this->close();}); } .... protected: Button mybutton; }; so I guess that lambda(...) part would actually be: bind(this, Dialog::close) ? I guess my real question is, does the LL support closures in the sense that I can use all bound variables at the time of the lambda definition and create an in-place function, or is that too much to ask of c++? I'm trying to emulate something like internal variable this from a PLT Scheme dialog class: (define edit-btn (make-object button% ; class "Edit Painting" ; label this ; parent (lambda (obj event) ; on-click proc (send controller edit-view))))
On Wednesday 21 August 2002 3:48 pm, you wrote:
See http://www.boost.org/status/cs-win32.html
Lambda does not and will not compile on MSVC until MSVC 7.1 is released
(I'm
told that it does work in this environment).
- Dale.
wow, thanks for the quick reply!
ah ok, guess I'll have to wait for their update. by the way, I read most of the lambda lib doc, but I was wondering if it works just like a lambda expression in other languages like lisp... fairly simple use: I have a Dialog class with a close() method and a Button class with a on_click event (which I guess would be the lambda function), and I'd like my button object to close the dialog.. so that I'd have..
class mydialog : public virtual Dialog { public: Dialog() { mybutton.on_click = lambda({this->close();}); } .... protected: Button mybutton; };
so I guess that lambda(...) part would actually be: bind(this, Dialog::close) ?
Nearly, try boost::bind(&mydialog::close, this). Boost.Bind does work with current versions of MSVC.
I guess my real question is, does the LL support closures in the sense that I can use all bound variables at the time of the lambda definition and create an in-place function, or is that too much to ask of c++? I'm trying to emulate something like internal variable this from a PLT Scheme dialog class:
(define edit-btn (make-object button% ; class "Edit Painting" ; label this ; parent (lambda (obj event) ; on-click proc (send controller edit-view))))
I'll let someone else answer that as I'm not sure what your asking. My functional programming lingua is poor, and I haven't read/written any Scheme for ~10 years. - Dale.
Sorry, Lambda library does not work with MSVC++ 6 (or 7 either). The next release of VC will fix this. GCC 2.96 and up, Metrowerks 8.1, Intel 6.0 under linux Como, KCC are compilers that work. /Jaakko
I have searched already in this list and the dev list for these MSVC compiler errors, but none of the solutions have worked so far. I have turned off precompiled headers, built clean, tried defining BOOST_NO_MEMBER_TEMPLATES before including "boost/lambda/lambda.hpp" (or "boost/lambda/bind.hpp"), and I still always get this error under Visual C++ 6 SP5 (Win2k Pro SP3), in both the Debug and Release configurations:
Deleting intermediate files and output files for project 'dWin - Win32 Release'. --------------------Configuration: dWin - Win32 Release--------------- ----- Compiling... dwin-button.cpp dwin-common-control.cpp dwin-dialog.cpp C:\TMP\BOOST\BOOST_1_28_0\boost/lambda/detail/lambda_fwd.hpp(31) : fatal error C1001: INTERNAL COMPILER ERROR (compiler file 'msc1.cpp', line 1794) Please choose the Technical Support command on the Visual C++ Help menu, or open the Technical Support help file for more information
Not sure what I'm doing wrong..
Yahoo! Groups Sponsor [dt_57_468x60north.gif] Info: http://www.boost.org Wiki: http://www.crystalclearsoftware.com/cgi-bin/boost_wiki/wiki.pl Unsubscribe: mailto:boost-users-unsubscribe@yahoogroups.com
Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service.
-- -- -- Jaakko Järvi email: jajarvi@cs.indiana.edu -- Post Doctoral Fellow phone: +1 (812) 855-3608 -- Pervasive Technology Labs fax: +1 (812) 855-4829 -- Indiana University, Bloomington
"Jaakko Jarvi"
Sorry,
Lambda library does not work with MSVC++ 6 (or 7 either). The next release of VC will fix this.
GCC 2.96 and up, Metrowerks 8.1, Intel 6.0 under linux Como, KCC
are compilers that work.
/Jaakko
Do you know if I can use MSVS with a different compiler (without breaking much)? That way I could use Lambda library with the MS resource editor and debugger/stepper, which are quite nice. -- Daniel
Do you know if I can use MSVS with a different compiler (without breaking much)? That way I could use Lambda library with the MS resource editor and debugger/stepper, which are quite nice.
Sorry, can't be of help in this one. Jaakko
participants (4)
-
Dale Peakall
-
Daniel Silva
-
Jaakko Jarvi
-
khuroth