Lexer/cross-windows-on-linux-default.cpp is marked

 REQUIRES: disabled

doesn't it means the test is disabled?

I had not debugged the six tests to see what exactly broke, only restored
pre-patch behaviour to make the tests pass.

On Windows both / and \ are accepted.  From past experience ( and
http://reviews.llvm.org/D3686 )
such problems are usually caused by StringMap caches in which /  and \ are
considered different when searching. Prime suspects would be:

 HeaderSearch::LookupFileCache
 HeaderSearch::FrameworkMap
 FileManager::SeenFileEntries

but these would also need fixing:

 HeaderSearch::IncludeAliases
 FileManager::SeenDirEntries

and probably other StringMaps.

To solve these we could create a PathStringMap derived from StringMap in
which the search is  / \ tolerant and use it instead of the StringMap when
paths are stored.

Yaron



2014-08-11 18:46 GMT+03:00 Rafael Espíndola <[email protected]>:

> > +#ifndef LLVM_ON_WIN32
> >      llvm::sys::path::native(NormalizedPath);
> > +#endif
>
> This call is used on linux to make
> Lexer/cross-windows-on-linux-default.cpp pass. Since on windows both /
> and \ are supposed to work, it seems that LookupFile should succeed
> even with the call to llvm::sys::path::native, no? Do you know why it
> is failing?
>
> Cheers,
> Rafael
>
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to