Re: [Stlport-devel] Ancient compilers
Brought to you by:
complement
From: <fra...@fr...> - 2007-08-30 19:58:10
|
Well, I should have asked you what you consider as a valid workaround, is there any ? We will need time to consider each workaround and see which one is really suspicious. I can already tell you that: - _STLP_NO_IEC559_SUPPORT do not exists anymore - _USE_OLD_RW_STL is not an STLport macro and change the way Borland native headers are included. Petr Ovtchenkov wrote: > On Wednesday 29 August 2007 23:55, François Dumont wrote: > >> Rather than listing compilers to remove support for I would prefer a >> list of workaround you would like to remove. Removing some files in >> stlport/stl/config won't really make STLport more clean. >> > > Yes, you totally right, I mean workarounds, not stlport/stl/config :-) > > Suspicious workarounds are: > > _STLP_NO_TEMPLATE_CONVERSIONS > _STLP_NO_MEMBER_TEMPLATE_CLASSES > _STLP_NO_MEMBER_TEMPLATES > _STLP_NO_FUNCTION_TMPL_PARTIAL_ORDER > _STLP_NO_FRIEND_TEMPLATES > _STLP_HAS_NO_NAMESPACES > _STLP_NO_METHOD_SPECIALIZATION > _STLP_NO_CLASS_PARTIAL_SPECIALIZATION > _STLP_STATIC_CONST_INIT_BUG > _STLP_NO_ARROW_OPERATOR > _STLP_LIMITED_DEFAULT_TEMPLATES (?) > _STLP_MSVC50_COMPATIBILITY > _STLP_DONT_USE_EXCEPTIONS (?) > _STLP_USE_OLD_HP_ITERATOR_QUERIES > _STLP_NO_TYPENAME_IN_TEMPLATE_HEADER > _STLP_DEF_CONST_PLCT_NEW_BUG (?) > _STLP_NO_TYPENAME_ON_RETURN_TYPE (?) > _STLP_NO_QUALIFIED_FRIENDS (?) > _STLP_NO_IEC559_SUPPORT (?) > _STLP_NO_MEMBER_TEMPLATE_KEYWORD > _STLP_DONT_SUPPORT_REBIND_MEMBER_TEMPLATE > _STLP_NO_MOVE_SEMANTIC > _STLP_DONT_RETURN_VOID > _STLP_DONT_USE_BOOL_TYPEDEF > _STLP_NO_USING_FOR_GLOBAL_FUNCTIONS > _STLP_DONT_SIMULATE_PARTIAL_SPEC_FOR_TYPE_TRAITS > _STLP_DONT_USE_PARTIAL_SPEC_WRKD (?) > _STLP_QUALIFIED_SPECIALIZATION_BUG (?) > _STLP_NON_TYPE_TMPL_PARAM_BUG (?) > _STLP_THROW_RETURN_BUG (?) > _STLP_DEF_CONST_DEF_PARAM_BUG > _STLP_USE_NO_IOSTREAMS > _STLP_NO_BOOL > _STLP_NO_PARTIAL_SPECIALIZATION_SYNTAX > _STLP_BROKEN_USING_DIRECTIVE > _STLP_NO_AT_MEMBER_FUNCTION > _USE_OLD_RW_STL (?) > _STLP_NO_CONTAINERS_EXTENSION > > >> MSVC compilers after VC6 and Borland C++ compilers are well >> supported so no reason to remove it. >> > > I.e. VS > 6.0, right? Only 7.0 is suspicious for me (looks like 'transient' compiler). > > What versions of Borland? What Borland revisions free from tricks like > #if !defined (__BORLANDC__) || (__BORLANDC__ != 0x560) > typedef typename __type_traits<_Src>::has_trivial_assignment_operator _Tr1; > #else > typedef typename _UnConstPtr<_Src*>::_Type _Tp3; > typedef typename __type_traits<_Tp3>::has_trivial_assignment_operator _Tr1; > #endif > and other, mainly coupled with _STLP_CLASS_PARTIAL_SPECIALIZATION. > > >> DMC is not as clean but it doesn't >> hurt neither. All those compilers are contributing in making STLport a >> portable library. >> > > ... well, some has most contribution in making STLport dusty. > > >> Petr Ovtchenkov wrote: >> >>> In accordance with https://sourceforge.net/tracker/index.php?func=detail&aid=1611125&group_id=146814&atid=861375 >>> I want to remove support of old compilers in STLPort 5.2: >>> >>> - Visual C++ 6.0 mainstream support ended on September 30, 2004 >>> (commercial compiler, 3 years since RIP) >>> >>> - gcc 2.95.x (2.95.3 released March 16, 2001) --- very stable, but not good for >>> modern C++; you has newer free alternative in any case; >>> >>> - gcc 3.0 (3.0.4 released February 20, 2002) --- not stable compiler; >>> strongly not recommended for modern C++; >>> >>> - gcc 3.1 (3.1.1 released July 25, 2002) --- not stable compiler; >>> strongly not recommended for modern C++; >>> >>> - gcc 3.2 (3.2.3 released April 22, 2003) -- not stable compiler; >>> strongly not recommended for modern C++; >>> >>> >>> Candidates: gcc 3.3 (3.3.6 released May 3, 2005); >>> >>> What state of Visual C++ 7.0, 7.1? >>> >>> I have question about Digital Mars. See DMC License (http://www.digitalmars.com/download/dmcpp.html) >>> [see EOL date]: >>> >>> <snip> >>> The Software is not generally available software. It has not undergone testing >>> and may contain errors. The Software was not designed to operate >>> after December 31, 1999. It may be incomplete and it may not function properly. >>> No support or maintenance is provided with this Software. Do not install >>> or distribute the Software if you are not accustomed to using or distributing >>> experimental software. Do not use this software for life critical applications. >>> </snip> >>> >>> Also, I have questions about Borland C++ (Turbo C++ again?). What state of this compilers? >>> >>> > > > |