monoeg_g_file_test (const gchar * filename, GFileTest test)
{
  gboolean D.6732;
  unsigned int D.6733;
  int D.6736;
  unsigned int D.6739;
  int D.6742;
  unsigned int D.6745;
  int D.6748;
  _Bool D.6749;
  unsigned int D.6752;
  unsigned int D.6753;
  unsigned int D.6756;
  int D.6761;
  _Bool D.6762;
  unsigned int D.6767;
  int D.6772;
  _Bool D.6773;
  struct stat st;
  gboolean have_stat;

  try
    {
      if (filename == 0B) goto <D.6729>; else goto <D.6731>;
      <D.6731>:
      if (test == 0) goto <D.6729>; else goto <D.6730>;
      <D.6729>:
      D.6732 = 0;
      return D.6732;
      <D.6730>:
      have_stat = 0;
      D.6733 = test & 16;
      if (D.6733 != 0) goto <D.6734>; else goto <D.6735>;
      <D.6734>:
      D.6736 = access (filename, 0);
      if (D.6736 == 0) goto <D.6737>; else goto <D.6738>;
      <D.6737>:
      D.6732 = 1;
      return D.6732;
      <D.6738>:
      <D.6735>:
      D.6739 = test & 8;
      if (D.6739 != 0) goto <D.6740>; else goto <D.6741>;
      <D.6740>:
      D.6742 = access (filename, 1);
      if (D.6742 == 0) goto <D.6743>; else goto <D.6744>;
      <D.6743>:
      D.6732 = 1;
      return D.6732;
      <D.6744>:
      <D.6741>:
      D.6745 = test & 2;
      if (D.6745 != 0) goto <D.6746>; else goto <D.6747>;
      <D.6746>:
      D.6748 = lstat (filename, &st);
      D.6749 = D.6748 == 0;
      have_stat = (gboolean) D.6749;
      if (have_stat != 0) goto <D.6750>; else goto <D.6751>;
      <D.6750>:
      D.6752 = st.st_mode;
      D.6753 = D.6752 & 61440;
      if (D.6753 == 40960) goto <D.6754>; else goto <D.6755>;
      <D.6754>:
      D.6732 = 1;
      return D.6732;
      <D.6755>:
      <D.6751>:
      <D.6747>:
      D.6756 = test & 1;
      if (D.6756 != 0) goto <D.6757>; else goto <D.6758>;
      <D.6757>:
      if (have_stat == 0) goto <D.6759>; else goto <D.6760>;
      <D.6759>:
      D.6761 = stat (filename, &st);
      D.6762 = D.6761 == 0;
      have_stat = (gboolean) D.6762;
      <D.6760>:
      if (have_stat != 0) goto <D.6763>; else goto <D.6764>;
      <D.6763>:
      D.6752 = st.st_mode;
      D.6753 = D.6752 & 61440;
      if (D.6753 == 32768) goto <D.6765>; else goto <D.6766>;
      <D.6765>:
      D.6732 = 1;
      return D.6732;
      <D.6766>:
      <D.6764>:
      <D.6758>:
      D.6767 = test & 4;
      if (D.6767 != 0) goto <D.6768>; else goto <D.6769>;
      <D.6768>:
      if (have_stat == 0) goto <D.6770>; else goto <D.6771>;
      <D.6770>:
      D.6772 = stat (filename, &st);
      D.6773 = D.6772 == 0;
      have_stat = (gboolean) D.6773;
      <D.6771>:
      if (have_stat != 0) goto <D.6774>; else goto <D.6775>;
      <D.6774>:
      D.6752 = st.st_mode;
      D.6753 = D.6752 & 61440;
      if (D.6753 == 16384) goto <D.6776>; else goto <D.6777>;
      <D.6776>:
      D.6732 = 1;
      return D.6732;
      <D.6777>:
      <D.6775>:
      <D.6769>:
      D.6732 = 0;
      return D.6732;
    }
  finally
    {
      st = {CLOBBER};
    }
}


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

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


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

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


