| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
llvm-svn: 185015
|
|
|
|
|
|
| |
Patch by 罗勇刚(Yonggang Luo).
llvm-svn: 184971
|
|
|
|
|
|
| |
bots :-(
llvm-svn: 184920
|
|
|
|
| |
llvm-svn: 184917
|
|
|
|
|
|
| |
I will remove the V1 version as soon as I change clang in the next commit.
llvm-svn: 184914
|
|
|
|
| |
llvm-svn: 184488
|
|
|
|
| |
llvm-svn: 184484
|
|
|
|
| |
llvm-svn: 184478
|
|
|
|
|
|
| |
With this we can remove the last use of PathV1 from llvm-ar.cpp.
llvm-svn: 184464
|
|
|
|
|
|
| |
Use that in llvm-ar.cpp to replace a use of sys::PathWithStatus.
llvm-svn: 184450
|
|
|
|
|
|
| |
PR16389
llvm-svn: 184434
|
|
|
|
| |
llvm-svn: 184431
|
|
|
|
| |
llvm-svn: 184233
|
|
|
|
| |
llvm-svn: 184217
|
|
|
|
|
|
|
|
| |
This ports a missing feature from PathV1.h. I am not sure how to test this
with the regular infrastructure, but an Apple bot should check this when
r183985 is reapplied.
llvm-svn: 184119
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This broke for example the 'not' utility, if a directory called
'FileCheck' is executable and in the path before the actual 'FileCheck'.
This patch steals the implementation of the "old" PathV1 canExecute
implementation:
- checks for R_OK (file readable): this is necessary for executing
scripts; we should not regress here unless we have good reasons
- checks for S_ISREG; if we want to get rid of this, we'd need to
change all callers who already made the assumption when depending
on Path V1.
llvm-svn: 184074
|
|
|
|
| |
llvm-svn: 183996
|
|
|
|
|
|
|
|
|
| |
If the directory that will contain the unique file doesn't exist when
we tried to create the file, but another process creates it before we
get a chance to try creating it, we would bail out rather than try to
create the unique file.
llvm-svn: 178908
|
|
|
|
|
|
|
| |
Clients of MemoryBuffer::getOpenFile expect it not to take ownership of the file
descriptor passed in. So don't.
llvm-svn: 176995
|
|
|
|
|
|
|
|
|
|
|
| |
infinite loop by constantly trying
to create the parent path.
This can happen if the path is a relative filename and the current directory was removed.
Thanks to Daniel D. for the hint in fixing it.
llvm-svn: 176226
|
|
|
|
|
|
|
| |
failing to create the unique file because the path doesn't exist,
don't fail if someone else manages to create the path before we do.
llvm-svn: 172032
|
|
|
|
|
|
|
| |
users over to the new one. No sense maintaining this "compatibility"
layer it seems.
llvm-svn: 171331
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Rationale:
1) This was the name in the comment block. ;]
2) It matches Clang's __has_feature naming convention.
3) It matches other compiler-feature-test conventions.
Sorry for the noise. =]
I've also switch the comment block to use a \brief tag and not duplicate
the name.
llvm-svn: 168996
|
|
|
|
|
|
|
|
|
|
| |
- The code could infinite loop trying to create unique files, if the directory
containing the unique file exists, but open() calls on non-existent files in
the path return ENOENT. This is true on the /dev/fd filesystem, for example.
- Will add a clang side test case for this.
llvm-svn: 168081
|
|
|
|
| |
llvm-svn: 161978
|
|
|
|
| |
llvm-svn: 161976
|
|
|
|
|
|
| |
includes both. Deal with feof and ferror potentially being macros.
llvm-svn: 161658
|
|
|
|
|
|
| |
and add unit test. Unix is implemented. Windows side needs to be implemented.
llvm-svn: 158770
|
|
|
|
|
|
|
|
|
|
|
| |
Apart from being slightly cheaper, this fixes a real bug that hits 32 bit
linux systems. When passing a file larger than 2G to be linked (which isn't
that uncommon with large projects such as WebKit), clang's driver checks
if the file exists but the file size doesn't fit in an off_t and stat(2)
fails with EOVERFLOW. Clang then says that the file doesn't exist instead
of passing it to the linker.
llvm-svn: 157891
|
|
|
|
|
|
|
|
| |
to user only read/write.
Part of rdar://11325849
llvm-svn: 156591
|
|
|
|
| |
llvm-svn: 156239
|
|
|
|
|
|
|
|
| |
- Just use sys::Process::GetRandomNumber instead of having two poor
implementations.
- This is ~70 times (!) faster on my OS X machine.
llvm-svn: 156238
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The problem is that the struct file_status on UNIX systems has two
members called st_dev and st_ino; those are also members of the
struct stat, and they are reserved identifiers which can also be
provided as #define (and this is the case for st_dev on Hurd).
The solution (attached) is to rename them, for example adding a
"fs_" prefix (= file status) to them.
Patch by Pino Toscano
llvm-svn: 155354
|
|
|
|
|
|
| |
Thanks to Pino Toscano for the patch
llvm-svn: 154500
|
|
|
|
|
|
|
|
|
|
|
| |
Unify default construction of error_code uses on this idiom so that users don't
feel compelled to make static globals for naming convenience. (unfortunately I
couldn't make the original ctor private as some APIs don't return their result,
instead using an out parameter (that makes sense to default construct) - which
is a bit of a pity. I did, however, find/fix some cases of unnecessary default
construction of error_code before I hit the unfixable cases)
llvm-svn: 150197
|
|
|
|
|
|
|
| |
Original commit message:
Support/FileSystem: Implement canonicalize.
llvm-svn: 146378
|
|
|
|
| |
llvm-svn: 146364
|
|
|
|
| |
llvm-svn: 146363
|
|
|
|
|
|
| |
directory_iterator preserve InputIterator semantics on copy.
llvm-svn: 146200
|
|
|
|
|
|
| |
Patch by Joakim Johansson!
llvm-svn: 139743
|
|
|
|
|
|
|
| |
If true and 'model' parameter is not an absolute path, a temp directory will be prepended.
Make it true by default to match current behaviour.
llvm-svn: 136310
|
|
|
|
| |
llvm-svn: 128218
|
|
|
|
| |
llvm-svn: 128199
|
|
|
|
|
|
| |
I have another way to achieve the same goal.
llvm-svn: 125239
|
|
|
|
| |
llvm-svn: 125236
|
|
|
|
|
|
|
|
|
|
| |
name of a path, after resolving symbolic links and eliminating excess
path elements such as "foo/../" and "./".
This routine still needs a Windows implementation, but I don't have a
Windows machine available. Help? Please?
llvm-svn: 125228
|
|
|
|
| |
llvm-svn: 123604
|
|
|
|
| |
llvm-svn: 123544
|
|
|
|
| |
llvm-svn: 122879
|
|
|
|
|
|
| |
via their return value instead of an out parameter.
llvm-svn: 121149
|