Please report new issues athttps://github.com/DOCGroup
added block
also drop msvc7 support at that time, that compiler is broken, 7.1 is then the version supported.
Just for my information, when was VC7 supported in the first place :-)!
It hasn't been supported but it can be used. By checking _MSC_VER in the config- win32-msvc.h we can then force people to not use 7.0. Now I think of it, shouldn't we do that already now for vc7?
Propose to add this to config-win32-msvc.h, but Steve Huston is running an ia64 vc7 build. Checking this with Steve first. #if (_MSC_VER >= 1400) # include "ace/config-win32-msvc-8.h" #elif (_MSC_VER >= 1310) # include "ace/config-win32-msvc-7.h" #elif (_MSC_VER >= 1300) # error This version of Microsoft Visual C++ not supported, upgrade to 7.1 #elif (_MSC_VER >= 1200) # include "ace/config-win32-msvc-6.h" #else # error This version of Microsoft Visual C++ not supported. #endif
For ia64 there is only a vc7 compiler so the change below will break that environment. hopefully microsoft releases a new 64bit compiler soon so that we can force people to not use vc7
When vc6 is dropped we can revert the change below: Thu Mar 10 11:20:01 2005 Jeff Parsons <j.parsons@vanderbilt.edu> * TAO_IDL/be/be_visitor_constant/constant_ch.cpp: * TAO_IDL/be/be_visitor_constant/constant_cs.cpp: Added preprocessor checks around IDL compiler code that generates inline constants. For VC6, which is broken in its handling of inline constants, inline constant generation is toggled off unless the constant is declared in a module or at global scope. Thanks to Johnny Willemsen <jwillemsen@remedy.nl> for pointing out the problem caused by recent changes to the IDL compiler's generation of constants.
A couple more things we can clean up once we drop support for VC6, related to template typedef support: - explicit specification of the return type template helper class in generated operations - some of the template parameters in sequence, _var and _out template classes - some of the template parameters in the argument helper classes - some of the template parameters in the context, component and home servant base classes in CIAO
We can also reduce the number of template parameters in the TAO::Portable_Server::get_*_arg<> function templates, as documented in the source files. The basic idea for the template parameter reductions mentioned here and in the above entries is to take advantage of typedefs that depend on template parameters, e.g.: template<typename T> ... typename Foo<T>::bar_type some_func(); and similarly for typedefs (traits) within class templates, such as those found in the ACE Acceptor/Connector/Strategy/Svc_Handler templates.
Once MSVC++ 6 support is dropped, we can take advantage of partial template specialization, meaning we can use specializations like ACE::If_Then_Else<>. This would also allow us to remove #if/else preprocessor block specific to MSVC++ 6 in ace/CDR_Base.h.
We can then also remove the usage of ACE_NESTED_CLASS
Issue for CORBA::Exception: * @todo According to the OMG CORBA C++ Mapping version 1.1, all * constructors, copy constructors and assignment operators * should be moved to "protected" section in class * declarations. Since the current MS Visual C++ 6.0 compiler * will cause some problems to TAO's exception mechanism, we * defer doing this until we drop support for MSVC++ 6.
After x.5.1 is out we can also force not to use vc7, Steve Huston informed me that we can do this, ia64 is then not an issue
After x.4.6 has been released we removed the last vc6 TAO build. This means that we don't build this anymore. We are not going to remove support after x.5.1 is out but things can break now.
msvc6 is also the only compiler that defines: ACE_HAS_BROKEN_UNEXPECTED_EXCEPTIONS so when msvc6 is dropped, we can remove this define and the usage throughout ACE/TAO. Especially in TAO I see this used several times.
Also, remove the hack I put in ace/Reactor_Token_T.h Mon Aug 29 17:26:49 2005 Steve Huston <shuston@riverace.com> In ctor decl, change ACE_Token::FIFO back to ACE_TOKEN_TYPE::FIFO
In TAO/tao/Pseudo_VarOut_T.h: * @todo Look into adding a template parameter to each of the * templates in question that would be a trait containing the * means for releasing references managed by the templates. * Doing so should work around the non-dependent name issues in * g++ 3.4, thus easing the requirement that this header be * parsed last. We can do this once we drop VC++ 6 support.
Also the new sequence implementation can go in when we drop vc6
also then remove tao/ciao/tools/config-handlers/vc6-4768.h
Also cleanup the following Thu Dec 22 12:22:12 UTC 2005 Johnny Willemsen <jwillemsen@remedy.nl> * ace/WIN32_Proactor.cpp: Added workarounds for vc6 which doesn't have ULONG_PTR
the change below is reverted When vc6 is dropped we can revert the change below: Thu Mar 10 11:20:01 2005 Jeff Parsons <j.parsons@vanderbilt.edu> * TAO_IDL/be/be_visitor_constant/constant_ch.cpp: * TAO_IDL/be/be_visitor_constant/constant_cs.cpp: Added preprocessor checks around IDL compiler code that generates inline constants. For VC6, which is broken in its handling of inline constants, inline constant generation is toggled off unless the constant is declared in a module or at global scope. Thanks to Johnny Willemsen <jwillemsen@remedy.nl> for pointing out the problem caused by recent changes to the IDL compiler's generation of constants.
also done;; also then remove tao/ciao/tools/config-handlers/vc6-4768.h ------- Additional Comments From Johnny Willemsen 2005-12-22 06:23 ------- Also cleanup the following Thu Dec 22 12:22:12 UTC 2005 Johnny Willemsen <jwillemsen@remedy.nl> * ace/WIN32_Proactor.cpp: Added workarounds for vc6 which doesn't have ULONG_PTR
closing this one, most things are removed so far as I know