noreturn-1.c

来自「linux下编程用 编译软件」· C语言 代码 · 共 72 行

C
72
字号
// Test that noreturn attributes are properly set.// Origin: Kaveh Ghazi <ghazi@caip.rutgers.edu> 2002-06-18.// { dg-do compile }// { dg-options "-Wall -O2" }#include <cstdlib>int foo1 (int i){  switch (i)    {    case 1:    case 2:      return i;    }  abort();}int foo2 (int i){  switch (i)    {    case 1:    case 2:      return i;    }  std::abort();}int foo3 (int i){  switch (i)    {    case 1:    case 2:      return i;    }  exit(1);}int foo4 (int i){  switch (i)    {    case 1:    case 2:      return i;    }  std::exit(1);}void __attribute__ ((__noreturn__)) foo5 (){  abort();}void __attribute__ ((__noreturn__)) foo6 (){  std::abort();}void __attribute__ ((__noreturn__)) foo7 (){  exit(1);}void __attribute__ ((__noreturn__)) foo8 (){  std::exit(1);}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?