When I run the DMD profile, the "overview" at the end of the
trace.log contains some mangles names (such as:
_D3std5stdio4File17LockingTextWriter12__T3putTAyaZ3putMFAyaZ13trustedFwriteFNbNiNexPvmmPOS4core4stdc5stdio7__sFILEZm
When I call demangle() on those mangled names it r
10DF014/libvibe-d_utils.a -L--no-as-needed -L--demangle=dlang -L-lsqlite3 -L-levent_pthreads -L-levent -L-lssl -L-lcrypto -L-ldl -g
/usr/bin/ld: unknown demangling style `dlang'
collect2: error: ld returned 1 exit status
Error: linker exited with status 1
FAIL
.dub/build/webmarx-test-application-
So in this document:
http://yshui.gitlab.io/sdpc/sdpc/parsers/whitespace.html
Part of the type name is still mangled. I found ddox use
core.demangle.demangleType internally. So I guess code.demangle
is following behind dmd?
Is there a better way to demangle a name?
est-linux.posix-x86_64-dmd_2077-B9AE30DD34FDC5ADDE81E208F10DF014/libvibe-d_utils.a -L--no-as-needed -L--demangle=dlang -L-lsqlite3 -L-levent_pthreads -L-levent -L-lssl -L-lcrypto -L-ldl -g
/usr/bin/ld: unknown demangling style `dlang'
collect2: error: ld returned 1 exit status
Error: linker exite
On Saturday, 6 January 2018 at 05:44:28 UTC, Venkat wrote:
Why does gcc say "unknown demangling style `dlang'" ? Do I need
GDC for demangling to work ?
Check your version of binutils with `ld --version`. It looks
like it was added in v2.25:
http://forum.dlang.org/post/rvoqllpimfskvlabp...@f
Yes, thanks Mike. I have 2.24 installed. Now I have to figure out
how I can upgrade binutils without a distro upgrade. :)
Hi,
I built a simple program with dmd a.d and tried to observe
symbols with nm --demangle=dlang ./a. However, I can observe that
only part of the symbols (e.g., std.stdio.File.size()) are
demangled, while others remain in their original name (e.g.,
_D3std5stdio4File8opAssignMFNfSQBdQBcQzZv
void main(){
import std.demangle;
import std.stdio;
writeln(demangle("_D5tango4text7convert6Format12__ModuleInfoZ"));
//_D5tango4text7convert6Format12__ModuleInfoZ
writeln(demangle("_D5tango4text7Unicode6toFoldFAxaAaZAa"));
//char[] tango.text.
On Tuesday, 17 July 2018 at 15:39:39 UTC, Zheng (Vic) Luo wrote:
Hi,
I built a simple program with dmd a.d and tried to observe
symbols with nm --demangle=dlang ./a. However, I can observe
that only part of the symbols (e.g., std.stdio.File.size()) are
demangled, while others remain in their
mangle!(void function())("foo").demangle returns "void function()* foo"
how would i get instead: `void foo ()` ?
my current workaround:
alias FunctionTypeOf(Fun)=typeof(*Fun.init);
mangle!(FunctionTypeOf!(void function()))("foo")
On Friday, 22 March 2013 at 11:23:30 UTC, timotheecour wrote:
void main(){
import std.demangle;
import std.stdio;
writeln(demangle("_D5tango4text7convert6Format12__ModuleInfoZ"));
//_D5tango4text7convert6Format12__ModuleInfoZ
writel
11 matches
Mail list logo