[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference turris::c_plus_plus

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

3547.0. "CXXDEMANGLE core dumps if the input is not *exactly* what it wants" by VAXCPU::michaud (Jeff Michaud - ObjectBroker) Mon Apr 21 1997 21:35

	It appears cxxdemangle doesn't like finding records longer than
	what a mangled name is supposed to be.

	What I really wanted to do was to send output from other commands
	(such as the VMS linker) to cxxdemangle, just like you can with
	the demangler on Digital UNIX and other platforms, but it barfed
	on that too.  Please consider supporting this for a future release.
	I hope at least you get rid of the assertion and replace it with
	a non-fatal error message for the user :-)

$ cxxdemangle
fjkfjkdfljfdlkfd
fjkfjkdfljfdlkfd
jkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
ASSERTION FAILURE key too long
%NONAME-F-NOMSG, Message number 00000004
%TRACE-F-TRACEBACK, symbolic stack dump follows
  image    module    routine             line      rel PC           abs PC
 CXX$DEMANGLE  CXDEMANGLE  assert       12933 0000000000000048 0000000000030D78
 CXX$DEMANGLE  CXDEMANGLE  find_record  13334 0000000000000D14 0000000000031A44
 CXX$DEMANGLE  CXDEMANGLE  demangle_lookup
                                        13385 0000000000000EFC 0000000000031C2C
 CXX$DEMANGLE  CXXDEMANGLE  main         2969 00000000000001A4 00000000000301A4
 CXX$DEMANGLE  CXXDEMANGLE  __main          0 0000000000000064 0000000000030064
                                            0 FFFFFFFF84D9A170 FFFFFFFF84D9A170
$ cxx/version nl:
DEC C++ V5.5-017 on OpenVMS Alpha V6.2
T.RTitleUserPersonal
Name
DateLines
3547.1You are right.DECC::KAOMon Apr 21 1997 23:048
You are right that the demangler should not assert.
I'll enter it to our internal bug tracking system.
Thanks.

My guess is the problem is more likely because the demangler on VMS could not
find the data base that it was looking at, not because the way that
demangler demangles the name.  It is different from the way demangler works 
on the UNIX.