Index: tools/build/v2/engine/src/search.c =================================================================== --- tools/build/v2/engine/src/search.c (revision 80) +++ tools/build/v2/engine/src/search.c (working copy) @@ -188,6 +188,7 @@ /* Look for the obvious */ /* This is a questionable move. Should we look in the */ /* obvious place if SEARCH is set? */ + file_info_t *ff; f->f_root.ptr = 0; f->f_root.len = 0; @@ -198,7 +199,10 @@ if ( DEBUG_SEARCH ) printf( "search %s: %s\n", target, buf->value ); - timestamp( buf->value, time ); + if ( file && ( ff = file_query(buf->value) ) && !ff->is_file ) /* we expect file but the path exists and is not a file */ + *time = 0; /* make the caller assume T_BIND_MISSING */ + else + timestamp( buf->value, time ); } boundname = newstr( buf->value );