STLPort - compatibility notes

STLPort for OpenWatcom

Compatibility notes

1. Compiler compatibility: STLPort 4.6.2

Compiler:System:Notes:
W11.0cOS/2-
OW 1.0OS/2-
OW 1.1OS/2-
OW 1.2OS/2-
OW 1.3OS/2Crash during compilation of the rope container.
OW 1.4-Currently unsupported - compiler crashes with exception when compiling the hash_map, hash_set, list, vector and slist containers.

I would recommend OpenWatcom 1.2 for use with STLPort: it is most stable and most compatible. Even if all the STL symbols are placed in the "anonymous" global namespace, user code can use name spaces (with some limitations though).

1.1. Regression test results

There is updated watcom.wmk makefile in the ./test/regression. You can either compile entire test suite, individual test cases or prepare preprocessor output for each example.

Exception test suite has updated watcom.wmk makefile in the ./test/eh directory. You can compile the entire test suite only.

Please note that version 1.3 of the OpenWatcom cannot compile the test_rope.cpp from the exception handling test suite - compiler crashes with access violation regardless of options used (this test is by default disabled for OpenWatcom 1.3).

For more information see notes placed in the respective makefiles. Exception test suite is described in online STLport documentation (included in distribution).

1.1.1. Namespaces

Currently only the OpenWatcom 1.3 is able to put STL into the std:: namespace. Namespace support in older versions is unusable with STLport.

Altough compilers older then 1.3 put all the STL symbols into global "anonymous" namespace, you can use namespaces in your programs together with the STLport.

1.1.2. Custom allocators

Allocators other then default are not supported.

1.2. About OpenWatcom 1.4

Altough this version is not supported (I tried to adapt STL for version 1.4rc3) there is a chance that STL will be available for this compiler version. It requires a lot more work: I think so far that original library code must be greatly simplified, so be patient...