1  int array[2];
       2  
       3  static int
       4  func1 (int b)
       5  {
       6    return b;
       7  }
       8  
       9  static int
      10  func2 (int a, int b)
      11  {
      12    return b == 0 ? a : b;
      13  }
      14  
      15  int
      16  func3 (int a)
      17  {
      18  }
      19  
      20  int *
      21  func4 (int *arg)
      22  {
      23    *arg = func1 ((func2 (func3 (array[0]), *arg)) | array[0]);
      24    return &array[1];
      25  }