stdcxx-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Martin Sebor (JIRA)" <>
Subject [jira] Commented: (STDCXX-302) [Compaq C++] unsats for template specializations in tests
Date Sat, 11 Nov 2006 00:47:41 GMT
    [ ] 
Martin Sebor commented on STDCXX-302:

This is almost certainly because of the ugly hackery in makefile common that tries to create
the name of the repository by using the $(*F) make variable in the definition of another variable
(see below). This needs to be reworked.

# SRCDIRS must be defined in GNUmakefile that includes this file

  ifneq ($(CXX_REPOSITORY),)

    # compose the name of the template instantiation repository from
    # the name of the test and a unique suffix (so that each test has
    # its own and same names with different definitions do not cause
    # conflicts) and append it to the name of the compiler and linker
    # e.g., Compaq C++ where this will expand to something like
    #     -ptr foo.ti
    # or IBM VisualAge where it will be along the lines of
    #    --qtempinc=foo.ti
    # or
    #    --qtemplateregistry=foo.ti
    repository_name = $(shell basename $(*F) 2>/dev/null).ti

> [Compaq C++] unsats for template specializations in tests
> ---------------------------------------------------------
>                 Key: STDCXX-302
>                 URL:
>             Project: C++ Standard Library
>          Issue Type: Bug
>          Components: Build
>         Environment: Compaq C++, Tru64 UNIX
>            Reporter: Martin Sebor
>         Assigned To: Martin Sebor
> Many tests are failing to link due to unsats for template specializations instantiated
in them. From the command line below it looks like the link line is missing the name of the
template repository named on the compiler line by the argument to the -ptr option:
> cxx -c -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build2/batman/5.0.0/builds/33198521/source-buildspace/include
-I/build2/batman/5.0.0/builds/33198521/source-buildspace/build/include -I/build2/batman/5.0.0/builds/33198521/source-buildspace/../rwtest
-I/build2/batman/5.0.0/builds/33198521/source-buildspace/../rwtest/include -I/build2/batman/5.0.0/builds/33198521/source-buildspace/tests/include
 -x cxx -nocxxstd -std strict_ansi_errors -g  -ptr 0.valcmp.ti -w1 -msg_disable 450  /build2/batman/5.0.0/builds/33198521/source-buildspace/tests/self/0.valcmp.cpp
> cxx 0.valcmp.o -o 0.valcmp -L/build2/batman/5.0.0/builds/33198521/source-buildspace/build/rwtest
-lrwtest -nocxxstd -liconv   -D_RWSTDDEBUG    -D_RWSTD_USE_CONFIG -I/build2/batman/5.0.0/builds/33198521/source-buildspace/include
-I/build2/batman/5.0.0/builds/33198521/source-buildspace/build/include -I/build2/batman/5.0.0/builds/33198521/source-buildspace/../rwtest
-I/build2/batman/5.0.0/builds/33198521/source-buildspace/../rwtest/include -I/build2/batman/5.0.0/builds/33198521/source-buildspace/tests/include
 -ptr .ti -L/build2/batman/5.0.0/builds/33198521/source-buildspace/build/lib -lstd   -lm
> ld:
> Unresolved:
> run_test(const char*, const char*)
> run_test(const signed char*, const char*)
> run_test(const unsigned char*, const char*)
> run_test(const short*, const char*)
> run_test(const unsigned short*, const char*)
> run_test(const int*, const char*)
> run_test(const unsigned int*, const char*)
> run_test(const long*, const char*)
> run_test(const unsigned long*, const char*)
> run_test(const long long*, const char*)
> run_test(const unsigned long long*, const char*)
> run_test(const wchar_t*, const char*)
> gmake: *** [0.valcmp] Error 1

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators:
For more information on JIRA, see:


View raw message