/* Generated by CIL v. 1.3.5 */
/* print_CIL_Input is false */

#define CCURED_SPLIT_ARGUMENTS
// #define CCURED_ALLOW_PARTIAL_ELEMENTS_IN_SEQUENCE
// #define CCURED_LOG_NON_POINTERS
#define CCURED_USE_STRINGS
// #define CCURED_FAIL_IS_TERSE
// #define CCURED_ALWAYS_STOP_ON_ERROR
// Include the definition of the checkers
#define CCURED
#define CCURED_POST
#include "ccuredcheck.h"
struct printf_arguments {
   int i ;
   double d ;
   char * __ROSTRING  s ;
   long long ll ;
};
extern void __ccuredInit(void) ;
extern  __attribute__((__noreturn__)) void abort_deepcopy(char *errmsg ) ;
struct meta_fseqp_int {
   void *_e ;
}   ;
struct fseqp_int {
   int * __FSEQ  _p ;
   struct meta_fseqp_int _ms ;
}   ;
typedef struct fseqp_int fseqp_int;
fseqp_int g_f  ;
int **foo(void) ;
int **foo(void) 
{ int res ;
  int **__retres2 ;

  {
  __retres2 = (int **)0;
  CHECK_FSEQARITH2SAFE((void *)g_f._p, g_f._ms._e, (void *)(g_f._p + 2), sizeof(int ),
                       sizeof(int ), 1, 0, 0);
  res = *(g_f._p + 2);
  { __NOCURE  
  __retres2 = (int **)g_f._p;
  goto return_label;
  }
  return_label: /* CIL Label */ ;
  return (__retres2);
}
}
