www.digitalmars.com         C & C++   DMDScript  

c++.announce - STLSoft 1.9.1 beta 41 released: probably the final beta

reply "Matthew Wilson" <matthew hat.stlsoft.dot.org> writes:
Refactoring of sized-integer discrimination, lots of fixes to makefiles,
DMC++ workarounds, a few late additions, deprecation of a *log* of vestigial
symbols.

Unless it is shown to contain any remaining issues, this should be the last
beta.

Download from http://stlsoft.org/downloads.html#stlsoft_1_9_1b41

Cheers

Matthew

============================================================================

Changes for 1.9.1 beta 41 (14th January 2006):

Changes
=======

 ~ refactored sized-integer detection:
    - The symbols
        STLSOFT_CF_8BIT_INT_EXTENDED_TYPE_IS_DISTINCT
        STLSOFT_CF_16BIT_INT_EXTENDED_TYPE_IS_DISTINCT
        STLSOFT_CF_32BIT_INT_EXTENDED_TYPE_IS_DISTINCT
      are removed. Instead use
        STLSOFT_CF_CHAR_DISTINCT_INT_TYPE
        STLSOFT_CF_SHORT_DISTINCT_INT_TYPE
        STLSOFT_CF_INT_DISTINCT_INT_TYPE
    ~ The symbols
        STLSOFT_CF_INT_DISTINCT_TYPE
        STLSOFT_CF_LONG_DISTINCT_TYPE
      are deprecated. Instead use
        STLSOFT_CF_INT_DISTINCT_INT_TYPE
        STLSOFT_CF_LONG_DISTINCT_INT_TYPE
    + The following symbols are added (and propagated through the codebase):
        STLSOFT_CF_CHAR_DISTINCT_INT_TYPE
        STLSOFT_CF_SHORT_DISTINCT_INT_TYPE
        STLSOFT_CF_INT_DISTINCT_INT_TYPE
        STLSOFT_CF_LONG_DISTINCT_INT_TYPE
        STLSOFT_CF_LONG_LONG_DISTINCT_INT_TYPE

 ~ A few last workarounds to ensure complete build/run of the
   unit-tests with DMC++

Additions:
==========

 + C compilation included in Unit-test builds

 ~ ensuring that all .h files are C-compilation compatible

 + stlsoft::limit_traits<bool> specialisation

 + stlsoft::sign_traits<long> and <unsigned long> specialisations

 + winstl::get_kernel_handle attribute shim overloads for
   winstl::event, winstl::process_mutex and winstl::semaphore

 + winstl::get_kernel_handle attribute shim overload for
   MFC types (in mfcstl/shims/attribute/get_kernel_handle.hpp)

 ~ winstl/time/format_functions.h => winstl/time/format_functions.hpp

Removals:
=========

 - removed (almost) all of the previously deprecated __STLSOFT* symbols,
   including the following:
        __STLSOFT_COMPILER_IS_BORLAND
        __STLSOFT_COMPILER_IS_COMO
        __STLSOFT_COMPILER_IS_DMC
        __STLSOFT_COMPILER_IS_INTEL
        __STLSOFT_COMPILER_IS_GCC
        __STLSOFT_COMPILER_IS_MSVC
        __STLSOFT_COMPILER_IS_MWERKS
        __STLSOFT_COMPILER_IS_VECTORC
        __STLSOFT_COMPILER_IS_WATCOM
        __STLSOFT_COMPILER_IS_UNKNOWN
        __STLSOFT_COMPILER_LABEL_STRING
        __STLSOFT_COMPILER_VERSION_STRING
        __STLSOFT_DOCUMENTATION_SKIP_SECTION
        __STLSOFT_CF_STATIC_ASSERT_SUPPORT
        __STLSOFT_CF_EXCEPTION_SUPPORT
        __STLSOFT_CF_FUNCTION_SIGNATURE_FULL_ARG_QUALIFICATION_REQUIRED
        __STLSOFT_CF_NAMESPACE_SUPPORT
        __STLSOFT_CF_TEMPLATE_SUPPORT
        __STLSOFT_CF_EXCEPTION_SIGNATURE_SUPPORT
        __STLSOFT_CF_THROW_BAD_ALLOC
        __STLSOFT_CF_NOTHROW_BAD_ALLOC
        __STLSOFT_CF_TEMPLATE_CLASS_DEFAULT_FUNDAMENTAL_ARGUMENT_SUPPORT
        __STLSOFT_CF_TEMPLATE_CLASS_DEFAULT_CLASS_ARGUMENT_SUPPORT
        __STLSOFT_CF_MEMBER_TEMPLATE_FUNCTION_SUPPORT
        __STLSOFT_CF_MEMBER_TEMPLATE_CTOR_SUPPORT
        __STLSOFT_CF_MEMBER_TEMPLATE_RANGE_METHOD_SUPPORT
        __STLSOFT_CF_MEMBER_TEMPLATE_CLASS_SUPPORT
        __STLSOFT_CF_TEMPLATE_SPECIALISATION_SYNTAX
        __STLSOFT_CF_TEMPLATE_PARTIAL_SPECIALISATION_SUPPORT
        __STLSOFT_CF_TEMPLATE_OUTOFCLASSFN_QUALIFIED_TYPE_SUPPORT
        __STLSOFT_CF_std_NAMESPACE
        __STLSOFT_CF_std_char_traits_AVAILABLE
        __STLSOFT_CF_ALLOCATOR_ALLOCATE_HAS_HINT
        __STLSOFT_CF_ALLOCATOR_DEALLOCATE_HAS_OBJECTCOUNT
        __STLSOFT_CF_BIDIRECTIONAL_ITERATOR_SUPPORT
        __STLSOFT_CF_EXPLICIT_KEYWORD_SUPPORT
        __STLSOFT_CF_MUTABLE_KEYWORD_SUPPORT
        __STLSOFT_CF_TYPENAME_PARAM_KEYWORD_SUPPORT
        __STLSOFT_CF_TYPENAME_TYPE_KEYWORD_SUPPORT
        __STLSOFT_CF_TYPENAME_TYPE_DEF_KEYWORD_SUPPORT
        __STLSOFT_CF_TYPENAME_TYPE_MIL_KEYWORD_SUPPORT
        __STLSOFT_CF_MOVE_CONSTRUCTOR_SUPPORT
        __STLSOFT_CF_KOENIG_LOOKUP_SUPPORT
        __STLSOFT_CF_TEMPLATE_TEMPLATE_SUPPORT
        __STLSOFT_CF_STATIC_ARRAY_SIZE_DETERMINATION_SUPPORT
        __STLSOFT_CF_VENEER_SUPPORT
        __STLSOFT_CF_TEMPLATE_SHIMS_NOT_SUPPORTED
        __STLSOFT_CF_NEGATIVE_MODULUS_POSITIVE_GIVES_NEGATIVE_RESULT
Jan 14 2007
parent reply Neal Becker <ndbecker2 gmail.com> writes:
Any ideas on this?  This is (again) Linux x86_64 gcc4.1.1

STLSOFT=/usr/local/src/stlsoft make -f makefile.unix
g++   -c -Wall -pedantic -Wno-long-long -Wno-unused-value -Werror  -O1  
-D_REENTRANT  -D_DEBUG -UNDEBUG  -Dunix -DPANTHEIOS_NO_AUTO_INIT 
-I../../include -I"/usr/local/src/stlsoft/include"    -o pantheios_appl.debug.o
../../src/pantheios_appl.cpp
g++   -c -Wall -pedantic -Wno-long-long -Wno-unused-value -Werror  -O1  
-D_REENTRANT  -D_DEBUG -UNDEBUG  -Dunix -DPANTHEIOS_NO_AUTO_INIT 
-I../../include -I"/usr/local/src/stlsoft/include"    -o pantheios_core.debug.o
../../src/pantheios_core.cpp
In file included from
/usr/local/src/stlsoft/include/platformstl/synch/atomic_functions.h:78,
                 from ../../src/pantheios_core.cpp:68:
/usr/local/src/stlsoft/include/unixlstl/synch/atomic_functions.h:75:26: error:
asm/atomic.h: No such file or directory
Jan 14 2007
parent reply "Matthew Wilson" <matthew hat.stlsoft.dot.org> writes:
"Neal Becker" <ndbecker2 gmail.com> wrote in message
news:eodagn$re5$1 digitaldaemon.com...
 Any ideas on this?  This is (again) Linux x86_64 gcc4.1.1

 STLSOFT=/usr/local/src/stlsoft make -f makefile.unix

ENTRANT -D_DEBUG -UNDEBUG -Dunix -DPANTHEIOS_NO_AUTO_INIT -I../../include -I"/usr/local/src/stlsoft/include" -o pantheios_appl.debug.o ../../src/pantheios_appl.cpp

ENTRANT -D_DEBUG -UNDEBUG -Dunix -DPANTHEIOS_NO_AUTO_INIT -I../../include -I"/usr/local/src/stlsoft/include" -o pantheios_core.debug.o ../../src/pantheios_core.cpp
 In file included from

                  from ../../src/pantheios_core.cpp:68:
 /usr/local/src/stlsoft/include/unixlstl/synch/atomic_functions.h:75:26:

Sigh, I guess Linux 64 doesn't have asm/atomic.h. There's a related issue I've wanted to sort for a while in the Pantheios core, and I guess this'll now prompt it. For the moment, just try the included file. I've made a little mod, though it'll _only_ work on UNIX (I hope <g>) Please let me know how this goes. If this works, I'll have a new Pantheios release v soon. Cheers Matthew
Jan 14 2007
parent reply Neal Becker <ndbecker2 gmail.com> writes:
Matthew Wilson wrote:

 
 "Neal Becker" <ndbecker2 gmail.com> wrote in message
 news:eodagn$re5$1 digitaldaemon.com...
 Any ideas on this?  This is (again) Linux x86_64 gcc4.1.1

 STLSOFT=/usr/local/src/stlsoft make -f makefile.unix

-D_RE ENTRANT -D_DEBUG -UNDEBUG -Dunix -DPANTHEIOS_NO_AUTO_INIT -I../../include -I"/usr/local/src/stlsoft/include" -o pantheios_appl.debug.o ../../src/pantheios_appl.cpp

-D_RE ENTRANT -D_DEBUG -UNDEBUG -Dunix -DPANTHEIOS_NO_AUTO_INIT -I../../include -I"/usr/local/src/stlsoft/include" -o pantheios_core.debug.o ../../src/pantheios_core.cpp
 In file included from

                  from ../../src/pantheios_core.cpp:68:
 /usr/local/src/stlsoft/include/unixlstl/synch/atomic_functions.h:75:26:

Sigh, I guess Linux 64 doesn't have asm/atomic.h. There's a related issue I've wanted to sort for a while in the Pantheios core, and I guess this'll now prompt it. For the moment, just try the included file. I've made a little mod, though it'll _only_ work on UNIX (I hope <g>) Please let me know how this goes. If this works, I'll have a new Pantheios release v soon.

I'll have to check on this, but I think the deal isn't specific to x86_64 not having asm/atomic.h - it is probably that all modern linuxes are not going to have it.
Jan 14 2007
parent "Matthew Wilson" <matthew hat.stlsoft.dot.org> writes:
"Neal Becker" <ndbecker2 gmail.com> wrote in message
news:eoe3r2$20al$1 digitaldaemon.com...
 Matthew Wilson wrote:

 "Neal Becker" <ndbecker2 gmail.com> wrote in message
 news:eodagn$re5$1 digitaldaemon.com...
 Any ideas on this?  This is (again) Linux x86_64 gcc4.1.1

 STLSOFT=/usr/local/src/stlsoft make -f makefile.unix

-D_RE ENTRANT -D_DEBUG -UNDEBUG -Dunix -DPANTHEIOS_NO_AUTO_INIT -I../../include -I"/usr/local/src/stlsoft/include" -o pantheios_appl.debug.o ../../src/pantheios_appl.cpp

-D_RE ENTRANT -D_DEBUG -UNDEBUG -Dunix -DPANTHEIOS_NO_AUTO_INIT -I../../include -I"/usr/local/src/stlsoft/include" -o pantheios_core.debug.o ../../src/pantheios_core.cpp
 In file included from

                  from ../../src/pantheios_core.cpp:68:
 /usr/local/src/stlsoft/include/unixlstl/synch/atomic_functions.h:75:26:

Sigh, I guess Linux 64 doesn't have asm/atomic.h. There's a related issue I've wanted to sort for a while in the Pantheios core, and I guess this'll now prompt it. For the moment, just try the included file. I've made a little mod,


 it'll _only_ work on UNIX (I hope <g>) Please let me know how this goes.

 If this works, I'll have a new Pantheios release v soon.

I'll have to check on this, but I think the deal isn't specific to x86_64 not having asm/atomic.h - it is probably that all modern linuxes are not going to have it.

Yes, it was always a punt on my part. It was convenient once, and has remained in there. I think I'll simply stop using it in any dependent projects - e.g. Pantheios - and work out either how to eliminate it or how to properly support it accross all (likely) architectures. btw, did that new file enable you to compile Pantheios? Cheers Matthew
Jan 14 2007