Spec-Zone.ru › GCC 5

6.49 Поддержка offsetof

GCC реализует для C и C++ синтаксическое расширение для реализации макроса offsetof.

primary:
        "__builtin_offsetof" "(" typename "," offsetof_member_designator ")"

offsetof_member_designator:
          identifier
        | offsetof_member_designator "." identifier
        | offsetof_member_designator "[" expr "]"

Этого расширения достаточно, чтобы

#define offsetof(type, member)  __builtin_offsetof (type, member)

было подходящим определением макроса offsetof. В C++, type может быть зависимым. В любом случае, member может состоять из одного идентификатора или последовательности обращений к членам и ссылок на массивы.

© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-5.5.0/gcc/Offsetof.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API