A fix is available
APAR status
Closed as program error.
Error description
The C preprocessor is throwing an invalid error when processing a variadic macro using the ## concatenate operator. The invalid syntax error that is reported only appears when a separate, valid macro error is detected by the compiler. ===== TEST CASE ===== #include <stdio.h> #define debug2(fmt, p1, ...) printf(fmt, p1, ## __VA_ARGS__) int main(int argc, char *argv) { debug2("%s\n", "Test" , "Test2"); // <<==== INVALID ERROR HERE debug2("%s\n",); } > xlc t.c ERROR CCN3046 ./t.c:7 Syntax error. ERROR CCN3098 ./t.c:8 Missing argument(s). CCN0793(I) Compilation failed for file ./t.c. Object file not created. >
Local fix
Correct the valid macro error.
Problem summary
**************************************************************** * USERS AFFECTED: Users of XL C/C++ * **************************************************************** * PROBLEM DESCRIPTION: z/OS console tracker DASDM OBTAIN at * * /bin/c89+0x43E84 * **************************************************************** * RECOMMENDATION: * ****************************************************************
Problem conclusion
Apply provided service.
Temporary fix
Comments
APAR Information
APAR number
PM81853
Reported component name
C/C++ FOR MVS
Reported component ID
56551210A
Reported release
770
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2013-01-31
Closed date
2013-03-25
Last modified date
2013-05-06
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK92865 PM87234
Modules/Macros
CCNECICS CCNECWI CCNEDSCT CCNEDWRT CCNED1C0 CCNEFILT CCNEHIFC CCNEMDEP CCNEOPTP CCNEP CCNEPP CCNETBY CCNMSGE CCNMSGT
Fix information
Fixed component name
C/C++ FOR MVS
Fixed component ID
56551210A
Applicable component levels
R770 PSY UK92865
UP13/04/13 P F304
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
Rate this page:
Average rating
Copyright and trademark information
IBM, the IBM logo and ibm.com are trademarks of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at www.ibm.com/legal/copytrade.shtml.