Я тут допиливаю код от
WINE для поддержки всех фич из dbghelp.dll. Кому то будет интересен этот проект? Если да, то я выложу на github.
Re: Деманглер имен для MSVC
От:
zaufi
Дата: 12.09.13 18:26
Оценка:
Здравствуйте, drVanо, Вы писали:
V>Я тут допиливаю код от WINE для поддержки всех фич из dbghelp.dll. Кому то будет интересен этот проект? Если да, то я выложу на github.
почему бы просто не послать patch обратно в upstream?
Re: Деманглер имен для MSVC
От:
flаt
Дата: 12.09.13 18:36
Оценка:
Здравствуйте, drVanо, Вы писали:
V>Я тут допиливаю код от WINE для поддержки всех фич из dbghelp.dll.
Чем undname.exe не устраивает? Нужен свой код? А последние фичи вроде && и Args... будут?
Re[2]: Деманглер имен для MSVC
Здравствуйте, flаt, Вы писали:
F>Чем undname.exe не устраивает? Нужен свой код?
Да, нужно свое.
F> А последние фичи вроде && и Args... будут?
Примеры есть?
Re[3]: Деманглер имен для MSVC
От:
flаt
Дата: 13.09.13 06:53
Оценка:
Здравствуйте, drVanо, Вы писали:
V>Примеры есть?
https://github.com/llvm-mirror/clang/blob/58e4cd09cc71893798282833806f4205b37dc828/lib/AST/MicrosoftMangle.cpp
// <type> ::= <r-value-reference-type>
// <r-value-reference-type> ::= $$Q E? <cvr-qualifiers> <type>
// # the E is required for 64-bit non static rvalue references
void MicrosoftCXXNameMangler::mangleType(const RValueReferenceType *T,
SourceRange Range) {
Out << "$$Q" ;
if (PointersAre64Bit && !T->getPointeeType()->isFunctionType())
Out << 'E' ;
mangleType(T->getPointeeType(), Range);
}
Re[4]: Деманглер имен для MSVC
Здравствуйте, flаt, Вы писали:
F>https://github.com/llvm-mirror/clang/blob/58e4cd09cc71893798282833806f4205b37dc828/lib/AST/MicrosoftMangle.cpp
Не вопрос. Примеры функций есть? Я тут по своей коллекции МАР файлов пробежал — такого пока не встречал.
Re: Деманглер имен для MSVC
Здравствуйте, drVanо, Вы писали:
V>Я тут допиливаю код от WINE для поддержки всех фич из dbghelp.dll. Кому то будет интересен этот проект? Если да, то я выложу на github.
А почему деманглер ? Это же только одна фича, и она покрывается UnDecorateSymbolName
http://msdn.microsoft.com/en-us/library/windows/desktop/ms681400(v=vs.85).aspx
With best regards
Pavel Dvorkin
Re[5]: Деманглер имен для MSVC
От:
flаt
Дата: 13.09.13 13:48
Оценка:
Здравствуйте, drVanо, Вы писали:
V>Не вопрос. Примеры функций есть? Я тут по своей коллекции МАР файлов пробежал — такого пока не встречал.
Эм.. Там же в тестах (microsoft-mangle.cpp & K°). Ну или cl.exe test.cpp && strings.exe test.exe | grep "my_func_prefixes"
Re[2]: Деманглер имен для MSVC
Здравствуйте, Pavel Dvorkin, Вы писали:
PD>А почему деманглер ? Это же только одна фича, и она покрывается UnDecorateSymbolName
PD>http://msdn.microsoft.com/en-us/library/windows/desktop/ms681400(v=vs.85).aspx
Да, нужен именно сам деманглер, причем чтобы работал не только под Windows. Ничего качественнее кода из WINE найти не удалось, поэтому пилю его.
Re[6]: Деманглер имен для MSVC
Здравствуйте, flаt, Вы писали:
F>Эм.. Там же в тестах (microsoft-mangle.cpp & K°).
Блин, в упор не вижу. Ткните пальцем, плиз
Re[2]: Деманглер имен для MSVC
Здравствуйте, flаt, Вы писали:
F>А последние фичи вроде &&
Было
??4QUrl@@QAEAAV0@$$QAV0@@Z
Стало
public: class QUrl & __thiscall QUrl::operator=(class QUrl &&)
Оно?
Re[2]: Деманглер имен для MSVC
Здравствуйте, flаt, Вы писали:
F>А последние фичи вроде && и Args... будут?
Приделал. Причем что странно — dbghelp от 7-ки эти вещи не поддерживает.
Пока на собственное сообщение не было ответов, его можно удалить.
Удалить