| Title: | C++ |
| Notice: | Read 1.* and use keywords (e.g. SHOW KEY/FULL KIT_CXX_VAX_VMS) |
| Moderator: | DECCXX::AMARTIN |
| Created: | Fri Nov 06 1987 |
| Last Modified: | Thu Jun 05 1997 |
| Last Successful Update: | Fri Jun 06 1997 |
| Number of topics: | 3604 |
| Total number of notes: | 18242 |
We're getting a compiler stack dump when we try to instantiate a
map of a map of a map.
Here's the code:
#include <map>
template class map<int, double>;
template class map<int, map<int, double> >;
template class map<int, map<int, map<int, double> > >; // This breaks it.
This is on an AlphaServer 8400 Model 5/350, and CXX/VERSION gives
DEC C++ T5.5-010 on OpenVMS Alpha V6.2-1H3.
Here are the compiler switches:
CXX /assume=noheader_type_default/exceptions=nocleanup/noopt/debug -
/template_define bug.CXX
Here's the result:
%SYSTEM-F-ACCVIO, access violation, reason mask=00, virtual address=05616C61,
PC
=05616C60, PS=0000001B
Improperly handled condition, image exit forced.
Signal arguments: Number = 00000005
Name = 0000000C
00010000
05616C61
05616C60
0000001B
Register dump:
R0 = 00000000007D6A90 R1 = 0000000000000001 R2 = 633C726961703C72
R3 = 746E692074736E6F R4 = 6E693C70616D202C R5 = 00000000005D3298
R6 = 0000000000A6C118 R7 = 0000000000000000 R8 = 000000000138FD40
R9 = 0000000000000000 R10 = 0000000000000000 R11 = 0000000000000000
R12 = 0000000000BFA638 R13 = 0000000000074C68 R14 = 00000000000000EC
R15 = 0000000000000000 R16 = 00000000007D7013 R17 = 0000000000000003
R18 = 000000007E202926 R19 = 0000000000000000 R20 = 0000000000000008
R21 = 00000000000665E0 R22 = 0000000000C20168 R23 = 0000000000000001
R24 = 0000000000000561 R25 = 00000000000665E0 R26 = 6F74616305616C61
R27 = 0000000000202926 R28 = 203E203E203E203E R29 = 6C62756F64202C74
SP = 000000007ED6E150 PC = 6F74616305616C60 PS = 100000000000001B
Thanks!
-Michael
| T.R | Title | User | Personal Name | Date | Lines |
|---|---|---|---|---|---|
| 3543.1 | VAX crash of same code | GAAS::FISHER | while (!asleep) sheep++; | Fri Apr 18 1997 14:42 | 14 |
On VAX VMS (same cluster) it gives the following error:
$CXX /assume=noheader_type_default/exceptions=nocleanup/noopt/debug -
/template_define bug.CXX
%CLI-F-TEXT, Compiler abort - virtual memory limits exceeded.
%SYSTEM-F-ABORT, abort
Bye --+--
Kay R. Fisher |
---------------O---------------
################################################################################
| |||||
| 3543.2 | DECCXL::ZEEB | Jeff Zeeb | Mon Apr 21 1997 09:53 | 3 | |
I have logged this problem in our tracking database. Jeff | |||||
| 3543.3 | Update | CMOS6::TSUK | Michael Tsuk | Tue Apr 22 1997 15:15 | 38 |
With DEC C++ V5.5-017 on OpenVMS Alpha V6.2-1H3, we can compile the
code in the base note. However, trying to go one more level causes
problems:
#include <map>
template class map<int, double>;
template class map<int, map<int, double> >;
template class map<int, map<int, map<int, double> > >;
template class map<int, map<int, map<int, map<int, double> > > >;
$ CXX /assume=noheader_type_default/exceptions=nocleanup/noopt/debug -
/template_define bug.CXX
%SYSTEM-F-ACCVIO, access violation, reason mask=00, virtual
address=6C61202C, PC=6C61202C, PS=0000001B
Improperly handled condition, image exit forced.
Signal arguments: Number = 00000005
Name = 0000000C
00010000
6C61202C
6C61202C
0000001B
Register dump:
R0 = 0000000000A96A60 R1 = 000000007ED6FBE9 R2 = 726961703C726F74
R3 = 692074736E6F633C R4 = 62756F64202C746E R5 = 3E203E203E20656C
R6 = 693C7373656C202C R7 = 6C61202C3E20746E R8 = 3C726F7461636F6C
R9 = 6E6F633C72696170 R10 = 202C746E69207473 R11 = 2C746E693C70616D
R12 = 0000000001674BF0 R13 = 0000000000000000 R14 = 0000000000491ED4
R15 = 000000007EE91DA0 R16 = 0000000000A98280 R17 = 00000000000000F7
R18 = 000000000000000F R19 = 0000000000000000 R20 = FFFFFFFFFFFFFFFB
R21 = 0000000000202926 R22 = 000000007F3608D0 R23 = 000000007ED6E3D0
R24 = 000000007ED6FBEB R25 = 0000000000000002 R26 = 61636F6C6C61202C
R27 = 0000000000202926 R28 = 0000000000000000 R29 = 2C656C62756F6420
SP = 000000007ED6F430 PC = 61636F6C6C61202C PS = 300000000000001B
| |||||
| 3543.4 | Any update? | GAAS::TSUK | Michael Tsuk | Wed May 28 1997 10:06 | 33 |
Re: .2 from Jeff Zeeb: > I have logged this problem in our tracking database. Any update? We're still getting the message: %CLI-F-TEXT, Compiler abort - virtual memory limits exceeded. %SYSTEM-F-ABORT, abort on our VAX system (DEC C++ V5.5-017 on OpenVMS VAX V6.1), and a %SYSTEM-F-ACCVIO, access violation, reason mask=00, virtual address=6C61202C, PC=6C61202C, PS=0000001B on our Alpha (DEC C++ V5.5-017 on OpenVMS Alpha V6.2-1H3). In both cases, the command line is: cxx/assume=noheader_type_default/template_define bug and the code is: #include <map> template class map<int, double>; template class map<int, map<int, double> >; template class map<int, map<int, map<int, double> > >; template class map<int, map<int, map<int, map<int, double> > > >; Is there a field-test version or a patch we could try out? This is having an impact on our development. -Michael | |||||
| 3543.5 | Noted | DECCXX::AMARTIN | Alan H. Martin | Thu May 29 1997 08:39 | 6 |
Re .4: >Any update? ... I've highlighted your situation to management. /AHM | |||||