From Bugzilla Helper:
User-Agent: Mozilla/4.0 (compatible; MSIE 5.5; Windows NT 4.0)
Description of problem:
I am trying to compile a product of ours on Linux which uses a C++ library
called objectspace. This in turn offers its own versions of some of the
STL classes and I am having problems compiling their version of map. It
works fine under egcs-1.1.2-30 and under Solaris (Workshop 5.0) and HP-UX
Steps to Reproduce:
1. compile the test program
Actual Results: I get the following:
instantiation of `os_rbtree<int, pair<const int, int>,
os_stl_select1st<pair<const int, int>, int>, less<int> >':
instantiated from `map<int, int, less<int> >'
test.cpp:5: instantiated from here
compiler error in lookup_template_class, at ../gcc/cp/pt.c:4061
Expected Results: It should compile.
I have used gcc-2.96-69, -81 (from RH7.1), -85 (from rawhide) and gcc-
2.95.3, all with the same results.
The program I am trying to compile is below, I will include the result of
a g++ -save-temps -v when I can figure out how to add an attachment.
map<int, int> test;
Created attachment 20085 [details]
output from g++ -save-temps -v
Sorry about the attachments, the temp.v one is just the -v output, which
probably doesn't help you much.
I have got the .ii file from -save-temps but I can't seem to upload it. It
might be too big, which was why I tried to gzip it but it may still be too big.
Since this is dependent on another product (the objectspace headers/library), I
can't reduce the size of my "test case" any more.
Is there another way to get this file to you?
Fixed with http://gcc.gnu.org/ml/gcc-patches/2000-11/msg01350.html in g++ 3.0,
I've just verified backport of this patch works and fixes it, so it will be fixed
for gcc-c++-2.96-86. FYI: this ICEs in gcc 2.95.2/2.95.3 as well.