Задать вопрос
@armadillo-cld

Убрать указание размера функции?

Пишу на NASM приложение для Win32.
Компоновщик gcc
Меня напрягает вечное указание размера функции:
_MessageBox@16, _ExitProcess@4 и т.д
Можно ли это как-то убрать, и просто объявлять: _MessageBox, _ExitProcess, как с msvcrt: _printf, __getch и т.д?
  • Вопрос задан
  • 108 просмотров
Подписаться 1 Простой Комментировать
Пригласить эксперта
Ответы на вопрос 2
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
Меня напрягает вечное указание размера функции

Это не размер функции. Это размер передаваемых параметров. И это часть ABI stdcall, документированная здесь, к gcc не имеющая отношения.

Можно ли это как-то убрать, и просто объявлять: _MessageBox, _ExitProcess, как с msvcrt: _printf, __getch и т.д?

На ассемблере? Ну разве что написав по макросу для каждой из этих функций.
Ответ написан
@Mercury13
Программист на «си с крестами» и не только
Зависит от того, чем линкуете.
Если вызываете напрямую ld — --kill-at.
Если gcc — то -Wl,--kill-at вроде.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы