Looks like braces are missing here: --- gcc-4.2-20061031.orig/gcc/ada/adaint.c 2006-02-15 10:30:39.000000000 +0100 +++ gcc-4.2-20061031/gcc/ada/adaint.c 2006-11-13 11:50:22.000000000 +0100 @@ -938,8 +938,10 @@ __gnat_readdir (DIR *dirp, char *buffer, #elif defined (HAVE_READDIR_R) /* If possible, try to use the thread-safe version. */ if (readdir_r (dirp, buffer) != NULL) - *len = strlen (((struct dirent*) buffer)->d_name); - return ((struct dirent*) buffer)->d_name; + { + *len = strlen (((struct dirent*) buffer)->d_name); + return ((struct dirent*) buffer)->d_name; + } else return NULL;
-- Summary: broken if..else in gcc/ada/adaint.c Product: gcc Version: 4.2.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ada AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: nikai at nikai dot net http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29856