This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: objdump : inaccurate demangling for foo(char* const)
- From: Ronald Landheer-Cieslak <blytkerchan at users dot sourceforge dot net>
- To: cygwin at cygwin dot com
- Date: Fri, 19 Sep 2003 11:51:41 +0200
- Subject: Re: objdump : inaccurate demangling for foo(char* const)
- References: <bkdtn1$597$2@sea.gmane.org> <bke0qt$8l6$1@sea.gmane.org>
AFAIK, const is a compiler directive - there is nothing in the assembler
that make a symbol const. You should see const more like a promise: "I
promise I won't change the value of this variable". That promise can be
broken by a const-cast, and the assembler code doesn't know anything about
it (AFAIK, there is no const in assembler, but I might be mistaken there).
rlc
On Fri, Sep 19, 2003 at 07:31:12AM +0300, Alex Vinokur wrote:
>
> "Alex Vinokur" <alexvn@connect.to> wrote in message bkdtn1$597$2@sea.gmane.org">news:bkdtn1$597$2@sea.gmane.org...
> > ==========================================
> > Windows 2000 Professional
> > CYGWIN_NT-5.0 1.5.4(0.94/3/2)
> > GNU gcc version 3.2 20020927 (prerelease)
> > GNU objdump 2.14.90 20030901
> > ==========================================
> >
>
> Updated question about objdump.
>
> Low-level and user-level symbol names of foo2(char* const) are foo2(char*)
>
> --------- C++ code ---------
> void foo1 (char*) {}
> void foo2 (char* const) {}
> ----------------------------
>
>
> --------- objdump : Fragments ---------
> $ objdump -Cd t.o
>
> t.o: file format pe-i386
>
> Disassembly of section .text:
>
> 00000000 <__Z4foo1Pc>: // OK
>
> 00000006 <__Z4foo2Pc>: // char*, not char* const
>
>
> $ objdump -d t.o
>
> t.o: file format pe-i386
>
> Disassembly of section .text:
>
> 00000000 <foo1(char*)>: // OK
>
>
> 00000006 <foo2(char*)>: // Not char* const
>
> --------------------------------------
>
> So, is it inaccuracy or convention?
>
>
> =====================================
> Alex Vinokur
> mailto:alexvn@connect.to
> http://mathforum.org/library/view/10978.html
> =====================================
>
>
>
>
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Problem reports: http://cygwin.com/problems.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
--
You will have a long and boring life.
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/