delorie.com/archives/browse.cgi | search |
Mailing-List: | contact cygwin-help AT cygwin DOT com; run by ezmlm |
List-Subscribe: | <mailto:cygwin-subscribe AT cygwin DOT com> |
List-Archive: | <http://sources.redhat.com/ml/cygwin/> |
List-Post: | <mailto:cygwin AT cygwin DOT com> |
List-Help: | <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs> |
Sender: | cygwin-owner AT cygwin DOT com |
Mail-Followup-To: | cygwin AT cygwin DOT com |
Delivered-To: | mailing list cygwin AT cygwin DOT com |
X-Injected-Via-Gmane: | http://gmane.org/ |
To: | cygwin AT cygwin DOT com |
From: | Rolf Campbell <Endlisnis AT mailc DOT net> |
Subject: | Re: objdump : inaccurate demangling for foo(char* const) |
Date: | Fri, 19 Sep 2003 14:17:08 -0400 |
Lines: | 104 |
Message-ID: | <bkfh75$v8o$1@sea.gmane.org> |
References: | <bkdtn1$597$2 AT sea DOT gmane DOT org> |
Mime-Version: | 1.0 |
X-Complaints-To: | usenet AT sea DOT gmane DOT org |
User-Agent: | Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.5b) Gecko/20030723 Thunderbird/0.1 |
X-Accept-Language: | en-us, en |
In-Reply-To: | <bkdtn1$597$2@sea.gmane.org> |
foo(char* const) is no different from foo(char*), from the perspective of linking/overloading. Did you mean foo(char const *)? Alex Vinokur wrote: > ========================================== > 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 > ========================================== > > > It seems that objdump inaccurately demangles foo(char* const). > Low-level symbol name of foo(char* const) is valid : __Z3fooPc > But user-level symbol name obtained after demangling is inaccurate : foo(char*). > > > > ====== C++ code : BEGIN ====== > // File t.cpp > > void foo3 (char*) {} > > ====== C++ code : END ======== > > > > ====== Compilation : BEGIN ====== > > $ g++ -c t.cpp > > ====== Compilation : END ======== > > > > ====== objdump : BEGIN ====== > > $ objdump -d t.o > > t.o: file format pe-i386 > > Disassembly of section .text: > > 00000000 <__Z3fooPc>: // OK > 0: 55 push %ebp > 1: 89 e5 mov %esp,%ebp > 3: 5d pop %ebp > 4: c3 ret > 5: 90 nop > 6: 90 nop > 7: 90 nop > 8: 90 nop > 9: 90 nop > a: 90 nop > b: 90 nop > c: 90 nop > d: 90 nop > e: 90 nop > f: 90 nop > > > > > > $ objdump -Cd t.o > > > t.o: file format pe-i386 > > Disassembly of section .text: > > 00000000 <foo(char*)>: // Must be foo(char* const) > 0: 55 push %ebp > 1: 89 e5 mov %esp,%ebp > 3: 5d pop %ebp > 4: c3 ret > 5: 90 nop > 6: 90 nop > 7: 90 nop > 8: 90 nop > 9: 90 nop > a: 90 nop > b: 90 nop > c: 90 nop > d: 90 nop > e: 90 nop > f: 90 nop > > ====== objdump : END ======== > > -- > ===================================== > Alex Vinokur > mailto:alexvn AT connect DOT 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/
webmaster | delorie software privacy |
Copyright © 2019 by DJ Delorie | Updated Jul 2019 |