{"blog_url":"https://flast.hateblo.jp/","author_url":"https://blog.hatena.ne.jp/Flast/","height":"190","provider_name":"Hatena Blog","provider_url":"https://hatena.blog","type":"rich","image_url":null,"description":"\u4f8b\u3048\u3070clang\u306fGCC\u306e__attribute__\u3092\u3044\u304f\u3064\u304b\u30b5\u30dd\u30fc\u30c8\u3057\u3066\u3044\u308b\u3002 \u4f8b\u3048\u3070__attribute__((noreturn) )\u3002gcc/clang\u4e21\u65b9\u3067\u30b3\u30f3\u30d1\u30a4\u30eb\u901a\u308b\u3088\u3046\u306b\u66f8\u3044\u3066\u308b\u308f\u3051\u3060\u3051\u3069\u6319\u52d5\u304c\u7570\u306a\u308b\u90e8\u5206\u3092\u767a\u898b\u3057\u305f\u3002 \u4f8b\u3048\u3070 typedef void func_t( void ); void g( func_t * ); void __attribute__((noreturn)) f( void ); \u3068\u3042\u3063\u305f\u3068\u3057\u3066\u3001 g( f ); \u306f\u4e21\u30b3\u30f3\u30d1\u30a4\u30e9\u3067\u901a\u3063\u305f\u3002\uff08\u901a\u3089\u306a\u3044\u3068\u56f0\u308b\u3088\uff1f\u3057\u304b\u3057f\u304c template < typename T > void __attribute__(\u2026","version":"1.0","published":"2011-08-27 21:20:45","blog_title":"\u306b\u3083\u306f\u306f\u30fc","author_name":"Flast","width":"100%","categories":["C++","Clang","GCC"],"url":"https://flast.hateblo.jp/entry/20110827/1314447645","html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fflast.hateblo.jp%2Fentry%2F20110827%2F1314447645\" title=\"clang(2.9)\u306eGCC Extension(attribute) - \u306b\u3083\u306f\u306f\u30fc\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","title":"clang(2.9)\u306eGCC Extension(attribute)"}