From: "Juan Manuel Guerrero" Organization: Darmstadt University of Technology To: djgpp-workers AT delorie DOT com Date: Sat, 4 Mar 2000 13:04:44 +0100 MIME-Version: 1.0 Content-type: text/plain; charset=US-ASCII Content-transfer-encoding: 7BIT Subject: bug in gcc2952 X-mailer: Pegasus Mail for Windows (v2.54DE) Message-ID: <4F3174B207F@HRZ1.hrz.tu-darmstadt.de> Reply-To: djgpp-workers AT delorie DOT com In file: xm-djgpp.h the following line appears: /* Allow test for DOS drive names. */ #define HAVE_DOS_BASED_FILE_SYSTEM but in file: gcc.c all macros looks like: HAVE_DOS_BASED_FILESYSTEM In the following patch i have changed this and also added a test for tooldir_prefix. Regards, Guerrero, Juan Manuel. *** gcc.c.orig Thu Aug 5 08:44:12 1999 --- gcc.c Sat Mar 4 12:10:06 2000 *************** find_a_file (pprefix, name, mode) *** 1997,2003 **** /* Determine the filename to execute (special case for absolute paths). */ if (IS_DIR_SEPARATOR (*name) ! #ifdef HAVE_DOS_BASED_FILESYSTEM /* Check for disk name on MS-DOS-based systems. */ || (name[0] && name[1] == ':' && IS_DIR_SEPARATOR (name[2])) #endif --- 1997,2003 ---- /* Determine the filename to execute (special case for absolute paths). */ if (IS_DIR_SEPARATOR (*name) ! #ifdef HAVE_DOS_BASED_FILE_SYSTEM /* Check for disk name on MS-DOS-based systems. */ || (name[0] && name[1] == ':' && IS_DIR_SEPARATOR (name[2])) #endif *************** process_command (argc, argv) *** 3078,3084 **** directories, so that we can search both the user specified directory and the standard place. */ ! if (!IS_DIR_SEPARATOR (*tooldir_prefix)) { if (gcc_exec_prefix) { --- 3078,3089 ---- directories, so that we can search both the user specified directory and the standard place. */ ! if (!IS_DIR_SEPARATOR (*tooldir_prefix) ! #ifdef HAVE_DOS_BASED_FILE_SYSTEM ! /* Check for disk name on MS-DOS-based systems. */ ! && !(tooldir_prefix[1] == ':' && IS_DIR_SEPARATOR (tooldir_prefix[2])) ! #endif ! ) { if (gcc_exec_prefix) { *************** main (argc, argv) *** 4842,4848 **** standard_startfile_prefix on that as well. */ if (IS_DIR_SEPARATOR (*standard_startfile_prefix) || *standard_startfile_prefix == '$' ! #ifdef HAVE_DOS_BASED_FILESYSTEM /* Check for disk name on MS-DOS-based systems. */ || (standard_startfile_prefix[1] == ':' && (IS_DIR_SEPARATOR (standard_startfile_prefix[2]))) --- 4847,4853 ---- standard_startfile_prefix on that as well. */ if (IS_DIR_SEPARATOR (*standard_startfile_prefix) || *standard_startfile_prefix == '$' ! #ifdef HAVE_DOS_BASED_FILE_SYSTEM /* Check for disk name on MS-DOS-based systems. */ || (standard_startfile_prefix[1] == ':' && (IS_DIR_SEPARATOR (standard_startfile_prefix[2])))