crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

ido
  опции профиля:
сообщение 19.3.2011, 15:37
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 26
Регистрация: 7.4.2010
Пользователь №: 1602

Спасибо сказали: 0 раз(а)




Репутация:   0  


При подключении gdktypes.h из gtk+-2.2 в препроцессорном листинге есть строки

typedef __builtin_va_list __gnuc_va_list;
typedef __gnuc_va_list va_list;

У __builtin_va_list неизвестен базовый тип. В каком файле его можно найти?

P.S. gcc 4.1.1
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Iron Bug
  опции профиля:
сообщение 21.3.2011, 13:59
Сообщение #2


Профессионал
*****

Группа: Модератор
Сообщений: 1611
Регистрация: 6.2.2009
Из: Yekaterinburg
Пользователь №: 533

Спасибо сказали: 219 раз(а)




Репутация:   12  


Цитата(ido @ 21.3.2011, 10:22) *
Т.е парсится во время компиляции каким-то макросом

нет. парсится в риалтайме, как стандартно парсятся переменные параметры, передаваемые через стек (va_arg и иже с ним). компилятор не делает никаких проверок насчёт содержимого va_arg. потому что он просто не может их делать. в общем, это обычные функции с переменным числом параметров. выкопать типы в условиях переменного количества параметров просто нереально. RTTI не передаётся явно. если очень хочется, можно сделать иерархию классов, передавать указатель на базовый класс и проверять typeid внутри самой функции.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 26.4.2025, 14:27