Travis Vitek wrote:
Eric Lemings wrote:

How about member templates?  Are these unilaterally supported by all
compilers now?


From below...

  _RWSTD_NO_INLINE_MEMBER_TEMPLATES /* not used at all */

This macro shouldn't exist anymore:
  http://issues.apache.org/jira/browse/STDCXX-339

Looks like Farid forgot to remove the config test (and the text
from the README).

Martin


As long as you provide a definition of the template inside the body of
the class, it seems all of the compilers we support are happy. If you
move the definition out, then all bets are off.

Brad.

Martin Sebor wrote:
Travis Vitek wrote:
Eric Lemings wrote:
Travis Vitek wrote:
This all gets back to the discussion we were having a few
weeks ago
about which compiler features we should expect the compiler support for
4.3.x.
I'm adding a Wiki page listing these compiler requirements
but I can
only think of one or two ATM.  What else should be on this list?

Well, I'd like to think that we could eliminate all of
these. Without
some of them them it becomes much more difficult or impossible to
implement some of meta classes.
I agree with this list with a couple of exceptions:

  _RWSTD_NO_CLASS_PARTIAL_SPEC
  _RWSTD_NO_BOOL

I can live with keeping the following, but a modern compiler should
really support these

  _RWSTD_NO_TYPENAME
  _RWSTD_NO_EXPLICIT
  _RWSTD_NO_EXPLICIT_ARG
  _RWSTD_NO_FRIEND_TEMPLATE
  _RWSTD_NO_FUNC_PARTIAL_SPEC
  _RWSTD_NO_NEW_FUNC_TEMPLATE_SYNTAX
  _RWSTD_NO_NEW_CLASS_TEMPLATE_SYNTAX
  _RWSTD_NO_INLINE_MEMBER_TEMPLATES /* not used att all */
  _RWSTD_NO_NAMESPACE
The macro can probably go but we might need to continue
to support _RWSTD_NAMESPACE() and add namespace renaming
(including std).

  _RWSTD_NO_LONG_DOUBLE
  _RWSTD_NO_LONG_LONG
This one can't go until the next standard has been ratified
and EDG eccp supports long long in strict mode.

In general, my feeling is that starting perhaps as early as
4.3 but certainly 5.0 we should feel free to assume a C++ 03
conforming compiler unless there is some value in doing
otherwise (e.g., supporting users who wish to compile with
exceptions disabled).

Martin

  _RWSTD_NO_WCHAR_T
  _RWSTD_NO_NATIVE_WCHAR_T

Brad.



Reply via email to