This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

libstdc++/1884: Some .tcc files not included because _GLIBCPP_NO_TEMPLATE_EXPORT macro is not defined



>Number:         1884
>Category:       libstdc++
>Synopsis:       Some .tcc files not included because _GLIBCPP_NO_TEMPLATE_EXPORT macro is not defined
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Feb 05 21:56:00 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     Gregory Bumgardner
>Release:        2.97
>Organization:
>Environment:
Red Hat Linux 2.2.16
>Description:
Instantiation of some libstdc++ templates results in
undefined symbols because _GLIBCPP_NO_TEMPLATE_EXPORT macro
is not defined when headers are included in user code.

This problem affects the string, streams, streambufs, 
and cmath template classes. All other templates instantiate
correctly because they do not conditionally include the .tcc
files.
>How-To-Repeat:
Instantiate basic_string, basic_ostream, and similar classes
with a character type other than char or wchar_t (e.g. int).
The instantiations for char and wchar_t are already provided
by the libstdc++, and therefore resolve correctly, while new
instantiations on other types will fail to generate all
necessary methods.
while user instantions 
>Fix:
Remove the conditionals that guard the inclusion of the
.tcc files, or supply a definition for the macro in a
config header.
>Release-Note:
>Audit-Trail:
>Unformatted:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]