[
http://issues.apache.org/jira/browse/STDCXX-302?page=comments#action_12448911 ]
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
ifeq ($(ONE_REPOSITORY),)
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: http://issues.apache.org/jira/browse/STDCXX-302
> 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:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira