У меня есть макрос, который передает номер строки и имя файла обработчику ошибок:
#define SYSTEM_FAILURE (error_code, comment) \
System_Failure((error_code), (comment), __LINE__, __FILE__);
Как будет разрешаться __LINE__
при использовании внутри встроенной функции?
file.h:
inline int divide(int x, int y)
{
if (y == 0)
{
SYSTEM_FAILURE(ENUM_DIVIDE_BY_ZERO, "divide by zero error");
}
return x/y;
}
Будет ли __LINE__
содержать номер строки в файле заголовка или номер строки исходного файла, в котором вызывается встроенная функция (предполагается, что компилятор выполняет "вставку" в исходном коде)?