monoeg_g_file_test (const gchar * filename, GFileTest test)
{
  _Bool D.6211;
  _Bool D.6212;
  _Bool D.6213;
  gboolean D.6216;
  unsigned int D.6217;
  int D.6220;
  unsigned int D.6223;
  int D.6226;
  unsigned int D.6229;
  int D.6232;
  _Bool D.6233;
  unsigned int D.6236;
  unsigned int D.6237;
  unsigned int D.6240;
  int D.6245;
  _Bool D.6246;
  unsigned int D.6251;
  int D.6256;
  _Bool D.6257;
  struct stat st;
  gboolean have_stat;

  try
    {
      D.6211 = filename == 0B;
      D.6212 = test == 0;
      D.6213 = D.6211 | D.6212;
      if (D.6213 != 0) goto <D.6214>; else goto <D.6215>;
      <D.6214>:
      D.6216 = 0;
      return D.6216;
      <D.6215>:
      have_stat = 0;
      D.6217 = test & 16;
      if (D.6217 != 0) goto <D.6218>; else goto <D.6219>;
      <D.6218>:
      D.6220 = access (filename, 0);
      if (D.6220 == 0) goto <D.6221>; else goto <D.6222>;
      <D.6221>:
      D.6216 = 1;
      return D.6216;
      <D.6222>:
      <D.6219>:
      D.6223 = test & 8;
      if (D.6223 != 0) goto <D.6224>; else goto <D.6225>;
      <D.6224>:
      D.6226 = access (filename, 1);
      if (D.6226 == 0) goto <D.6227>; else goto <D.6228>;
      <D.6227>:
      D.6216 = 1;
      return D.6216;
      <D.6228>:
      <D.6225>:
      D.6229 = test & 2;
      if (D.6229 != 0) goto <D.6230>; else goto <D.6231>;
      <D.6230>:
      D.6232 = lstat (filename, &st);
      D.6233 = D.6232 == 0;
      have_stat = (gboolean) D.6233;
      if (have_stat != 0) goto <D.6234>; else goto <D.6235>;
      <D.6234>:
      D.6236 = st.st_mode;
      D.6237 = D.6236 & 61440;
      if (D.6237 == 40960) goto <D.6238>; else goto <D.6239>;
      <D.6238>:
      D.6216 = 1;
      return D.6216;
      <D.6239>:
      <D.6235>:
      <D.6231>:
      D.6240 = test & 1;
      if (D.6240 != 0) goto <D.6241>; else goto <D.6242>;
      <D.6241>:
      if (have_stat == 0) goto <D.6243>; else goto <D.6244>;
      <D.6243>:
      D.6245 = stat (filename, &st);
      D.6246 = D.6245 == 0;
      have_stat = (gboolean) D.6246;
      <D.6244>:
      if (have_stat != 0) goto <D.6247>; else goto <D.6248>;
      <D.6247>:
      D.6236 = st.st_mode;
      D.6237 = D.6236 & 61440;
      if (D.6237 == 32768) goto <D.6249>; else goto <D.6250>;
      <D.6249>:
      D.6216 = 1;
      return D.6216;
      <D.6250>:
      <D.6248>:
      <D.6242>:
      D.6251 = test & 4;
      if (D.6251 != 0) goto <D.6252>; else goto <D.6253>;
      <D.6252>:
      if (have_stat == 0) goto <D.6254>; else goto <D.6255>;
      <D.6254>:
      D.6256 = stat (filename, &st);
      D.6257 = D.6256 == 0;
      have_stat = (gboolean) D.6257;
      <D.6255>:
      if (have_stat != 0) goto <D.6258>; else goto <D.6259>;
      <D.6258>:
      D.6236 = st.st_mode;
      D.6237 = D.6236 & 61440;
      if (D.6237 == 16384) goto <D.6260>; else goto <D.6261>;
      <D.6260>:
      D.6216 = 1;
      return D.6216;
      <D.6261>:
      <D.6259>:
      <D.6253>:
      D.6216 = 0;
      return D.6216;
    }
  finally
    {
      st = {CLOBBER};
    }
}


lstat (const char * __path, struct stat * __statbuf)
{
  int D.6264;

  D.6264 = __lxstat (1, __path, __statbuf);
  return D.6264;
}


stat (const char * __path, struct stat * __statbuf)
{
  int D.6266;

  D.6266 = __xstat (1, __path, __statbuf);
  return D.6266;
}


