setjmp-1.c

来自「this is a gcc file, you can download it 」· C语言 代码 · 共 37 行

C
37
字号
/* Test for bogus "variable `x' may be clobbered by longjmp" warnings.   Inspired by cse.c:simplify_relational_operation. *//* { dg-do compile } *//* { dg-options "-O -W -Wall" } */#include <setjmp.h>extern void set_float_handler (jmp_buf *);#define EQ 0x01#define LT 0x02#define GT 0x04intcompare_float (double a, double b)  /* { dg-bogus "clobbered" "spurious clobbered warning" { xfail *-*-* } } */{  jmp_buf handler;  int result;  a += 1.0;  if (setjmp (handler))    {      set_float_handler (0);      return 0;    }  set_float_handler (&handler);  if (a == b) result = EQ;  else if (a > b) result = LT;  else if (a < b) result = GT;  else result = 0;  set_float_handler (0);  return result;}

⌨️ 快捷键说明

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