#define WRITELOG(h,lvl,fmt,args...) fWrite(h, __FILE__, __func__, __LINE__, lvl, fmt, ##args)
구문이 이상하다고 Proc*C가 뱉어냅니다. Proc*C 버젼은 10.2.0.4.0 입니다.
뭐 우아한 방법이 있을 수도 있겠지만, 대충 안 우아하고 쉬운 길을 택하면
#define WRITELOG(h,lvl,...) fWrite(h, __FILE__, __func__, __LINE__, lvl, __VA_ARGS__)
이렇게 해 버리면 될 겁니다. 이것조차 안 먹히면 애초에 C99의 Variadic Macros를 지원을 안하는건데, 그러면 뭐 어쩔 수 없지요..
#define fWrite(a,...) printf(a,__VA_ARGS__)
int main () { fWrite("%s:%s:%d\n", __FILE__,__func__,__LINE__); return 0; } PCC-S-2014, Encountered the symbol "..." when expecting one of the following 라네요 ㅎㅎㅎ
텍스트 포맷에 대한 자세한 정보
<code>
<blockcode>
<apache>
<applescript>
<autoconf>
<awk>
<bash>
<c>
<cpp>
<css>
<diff>
<drupal5>
<drupal6>
<gdb>
<html>
<html5>
<java>
<javascript>
<ldif>
<lua>
<make>
<mysql>
<perl>
<perl6>
<php>
<pgsql>
<proftpd>
<python>
<reg>
<spec>
<ruby>
<foo>
[foo]
뭐 우아한 방법이 있을 수도 있겠지만, 대충 안
뭐 우아한 방법이 있을 수도 있겠지만, 대충 안 우아하고 쉬운 길을 택하면
#define WRITELOG(h,lvl,...) fWrite(h, __FILE__, __func__, __LINE__, lvl, __VA_ARGS__)
이렇게 해 버리면 될 겁니다.
이것조차 안 먹히면 애초에 C99의 Variadic Macros를 지원을 안하는건데, 그러면 뭐 어쩔 수 없지요..
안되네요 혹시나 컴파일옵션에 들어가나 싶어서 찾아보는데 쉽지 않네요 ㅎㅎ
#define fWrite(a,...) printf(a,__VA_ARGS__)
int main ()
{
fWrite("%s:%s:%d\n", __FILE__,__func__,__LINE__);
return 0;
}
PCC-S-2014, Encountered the symbol "..." when expecting one of the following
라네요 ㅎㅎㅎ
댓글 달기