| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
It is similar to 186511, but for creating files for writing.
llvm-svn: 186679
|
|
|
|
| |
llvm-svn: 186561
|
|
|
|
|
|
|
|
|
|
|
| |
This has some advantages:
* Lets us use native, utf16 windows functions.
* Easy to produce good errors on windows about trying to use a
directory when we want a file.
* Simplifies the unix version a bit.
llvm-svn: 186511
|
|
|
|
|
|
|
|
|
| |
Rename's documentation says "Files are renamed as if by POSIX rename()". and it
is used for atomically updating output files from a temporary. Having rename
fallback to a non atomic copy has the potential to hide bugs, like using
a temporary file in /tmp instead of a unique name next to the final destination.
llvm-svn: 186483
|
|
|
|
| |
llvm-svn: 186378
|
|
|
|
|
|
|
| |
This opens the way of having static helpers in the .inc files that can
construct a file_status.
llvm-svn: 186376
|
|
|
|
| |
llvm-svn: 186303
|
|
|
|
| |
llvm-svn: 186301
|
|
|
|
|
|
|
| |
While at it, use strftime on Unix too and use the thread safe versions
of localtime.
llvm-svn: 186090
|
|
|
|
|
|
|
|
|
|
| |
The status function is already using a syscall that returns the file size.
Remember it and implement file_size as a simple wrapper.
No functionally change, but clients that already use status now can avoid
calling file_size.
llvm-svn: 186016
|
|
|
|
| |
llvm-svn: 185834
|
|
|
|
| |
llvm-svn: 185605
|
|
|
|
| |
llvm-svn: 185603
|
|
|
|
|
|
| |
Patch by pashev.igor.
llvm-svn: 185601
|
|
|
|
| |
llvm-svn: 185136
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Don't try to create parent directories in unique_file. It had two problem:
* It violates the contract that it is atomic. If the directory creation
success and the file creation fails, we would return an error but the
file system was modified.
* When creating a temporary file clang would have to first check if the
parent directory existed or not to avoid creating one when it was not
supposed to.
* More efficient implementations of createUniqueDirectory and the unique_file
that produces only the file name. Now all 3 just call into a static
function passing what they want (name, file or directory).
Clang also has to be updated, so tests might fail if a bot picks up this commit
and not the corresponding clang one.
llvm-svn: 185126
|
|
|
|
| |
llvm-svn: 185015
|
|
|
|
|
|
| |
Patch by 罗勇刚(Yonggang Luo).
llvm-svn: 184971
|
|
|
|
| |
llvm-svn: 184960
|
|
|
|
|
|
| |
bots :-(
llvm-svn: 184920
|
|
|
|
| |
llvm-svn: 184917
|
|
|
|
| |
llvm-svn: 184916
|
|
|
|
|
|
| |
I will remove the V1 version as soon as I change clang in the next commit.
llvm-svn: 184914
|
|
|
|
| |
llvm-svn: 184910
|
|
|
|
| |
llvm-svn: 184853
|
|
|
|
| |
llvm-svn: 184852
|
|
|
|
| |
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: 184428
|
|
|
|
| |
llvm-svn: 184311
|
|
|
|
| |
llvm-svn: 184298
|
|
|
|
| |
llvm-svn: 184235
|
|
|
|
| |
llvm-svn: 184233
|
|
|
|
| |
llvm-svn: 184229
|
|
|
|
| |
llvm-svn: 184219
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
It looks like clang-tools-extra/unittests/cpp11-migrate/TransformTest.cpp
depends on the behaviour of the old one on Windows. Maybe a difference
between GetCurrentDirectoryA and GetCurrentDirectoryW?
llvm-svn: 184009
|
|
|
|
|
|
| |
GetCurrentDirectory is now unused. Remove it.
llvm-svn: 184003
|
|
|
|
| |
llvm-svn: 183996
|
|
|
|
| |
llvm-svn: 183947
|
|
|
|
| |
llvm-svn: 183928
|
|
|
|
|
|
|
|
|
|
|
|
| |
Execute's Data parameter is now optional, so we won't allocate memory
for it on Windows and we'll close the process handle.
The Unix code should probably do something similar to avoid accumulation
of zombie children that haven't been waited on.
Tested on Linux and Windows.
llvm-svn: 183906
|
|
|
|
|
|
|
| |
It was only used to implement ExecuteAndWait and ExecuteNoWait. Expose just
those two functions and make Execute and Wait implementations details.
llvm-svn: 183864
|