Здравствуйте, J0nny, Вы писали:
V>>Из примера видно что вы делаете склейку со скобкой, а это не pp token. Результат — UB.
J>))). Это мне и так понятно. Склейку делает pp msvc в дефолтовом режиме(в режиме STDC — Za он тоже спотыкается, даже не доходя до склейки — на $ ). Мне нужно узнать какие шаги препроцессор выполняет. Это нужно чтобы впихнуть в свой pp поддержку етой "фичи" msvc.
Если вопрос ни в "как написать", а в "что делает здесь препроцессор", то только тестами и можно. На моей памяти спец символы у msvc не являются полноценными pp токенами, т.е. их можно в некоторых случая подставлять как обычные. К примеру, у меня получилось запихнуть /* и */ в макросы и пользоваться макросами для комментирования кода. Похожий пример есть
здесьАвтор: Vain
Дата: 08.06.06
. Но повторяю, это всё от лешего, ни к чему хорошому знания деталей говно-парсера не приведёт, только к новым неприятностям на свою Ж. Но если вам нравятся бага-квесты, то вперёд.
[In theory there is no difference between theory and practice. In
practice there is.]
[Даю очевидные ответы на риторические вопросы]