… | |
… | |
367 | |
367 | |
368 | #define ecb_unused ecb_attribute ((__unused__)) |
368 | #define ecb_unused ecb_attribute ((__unused__)) |
369 | #define ecb_const ecb_attribute ((__const__)) |
369 | #define ecb_const ecb_attribute ((__const__)) |
370 | #define ecb_pure ecb_attribute ((__pure__)) |
370 | #define ecb_pure ecb_attribute ((__pure__)) |
371 | |
371 | |
372 | /* TODO http://msdn.microsoft.com/en-us/library/k6ktzx3s.aspx __declspec(noreturn) */ |
|
|
373 | #if ECB_C11 || __IBMC_NORETURN |
372 | #if ECB_C11 || __IBMC_NORETURN |
374 | /* http://pic.dhe.ibm.com/infocenter/compbg/v121v141/topic/com.ibm.xlcpp121.bg.doc/language_ref/noreturn.html */ |
373 | /* http://pic.dhe.ibm.com/infocenter/compbg/v121v141/topic/com.ibm.xlcpp121.bg.doc/language_ref/noreturn.html */ |
375 | #define ecb_noreturn _Noreturn |
374 | #define ecb_noreturn _Noreturn |
376 | #elif ECB_CPP11 |
375 | #elif ECB_CPP11 |
377 | #define ecb_noreturn [[noreturn]] |
376 | #define ecb_noreturn [[noreturn]] |
378 | #elif _MSC_VER >= 1200 |
377 | #elif _MSC_VER >= 1200 |
|
|
378 | /* http://msdn.microsoft.com/en-us/library/k6ktzx3s.aspx */ |
379 | #define ecb_noreturn __declspec (noreturn) |
379 | #define ecb_noreturn __declspec (noreturn) |
380 | #else |
380 | #else |
381 | #define ecb_noreturn ecb_attribute ((__noreturn__)) |
381 | #define ecb_noreturn ecb_attribute ((__noreturn__)) |
382 | #endif |
382 | #endif |
383 | |
383 | |