| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 202104
|
|
|
|
| |
llvm-svn: 201512
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This commit improves libclang to report the error condition when
CXTranslationUnit can not be created because of a stale PCH file. This allows
the caller, for example, to rebuild the PCH file and retry the request.
There two are APIs in libclang that return a CXTranslationUnit and don't
support reporting detailed errors (the only error condition is a NULL result).
For these APIs, a second, superior, version is introduced --
clang_createTranslationUnit2 and clang_parseTranslationUnit2. These functions
return a CXTranslationUnit indirectly and also return an error code. Old
functions are still supported and are nothing more than convenience wrappers
that ignore extended error codes.
As a cleanup, this commit also categorizes some libclang errors in the
functions I had to modify anyway.
llvm-svn: 201249
|
|
|
|
|
|
| |
source files for a module only once during)
llvm-svn: 201225
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the build
When Clang loads the module, it verifies the user source files that the module
was built from. If any file was changed, the module is rebuilt. There are two
problems with this:
1. correctness: we don't verify system files (there are too many of them, and
stat'ing all of them would take a lot of time);
2. performance: the same module file is verified again and again during a
single build.
This change allows the build system to optimize source file verification. The
idea is based on the fact that while the project is being built, the source
files don't change. This allows us to verify the module only once during a
single build session. The build system passes a flag,
-fbuild-session-timestamp=, to inform Clang of the time when the build started.
The build system also requests to enable this feature by passing
-fmodules-validate-once-per-build-session. If these flags are not passed, the
behavior is not changed. When Clang verifies the module the first time, it
writes out a timestamp file. Then, when Clang loads the module the second
time, it finds a timestamp file, so it can compare the verification timestamp
of the module with the time when the build started. If the verification
timestamp is too old, the module is verified again, and the timestamp file is
updated.
llvm-svn: 201224
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A return type is the declared or deduced part of the function type specified in
the declaration.
A result type is the (potentially adjusted) type of the value of an expression
that calls the function.
Rule of thumb:
* Declarations have return types and parameters.
* Expressions have result types and arguments.
llvm-svn: 200082
|
|
|
|
|
|
| |
Cleanup only.
llvm-svn: 199773
|
|
|
|
|
|
| |
Enums don't have linkage, so clang warns when this expands to dllimport.
llvm-svn: 198227
|
|
|
|
|
|
|
|
| |
future-proof.
Suggested by Alp Toker.
llvm-svn: 196591
|
|
|
|
|
|
|
|
| |
libclang.
Patch by Erik Verbruggen!
llvm-svn: 196487
|
|
|
|
|
|
|
|
| |
(which was removed in r96823) to clang_formatDiagnostics.
Patch by David Wiberg
llvm-svn: 194956
|
|
|
|
|
|
|
|
| |
This allows compilation database implementations for distributed build
systems to hand all data to the client to make parsing independent of
the file system.
llvm-svn: 194571
|
|
|
|
| |
llvm-svn: 193046
|
|
|
|
|
|
|
|
| |
ref-qualifier information of function type.
Patch by Che-Liang Chiou!
llvm-svn: 192493
|
|
|
|
|
|
|
|
| |
a member pointer type.
Patch by Che-Liang Chiou!
llvm-svn: 191906
|
|
|
|
|
|
| |
Patch by Loïc Jaquemet!
llvm-svn: 191345
|
|
|
|
|
|
| |
Based on a patch by Benno Rice!
llvm-svn: 189644
|
|
|
|
| |
llvm-svn: 188625
|
|
|
|
|
|
|
|
| |
Also bump the minor version number and update libclang.exports.
Reviewed by: Dmitri Gribenko, Doug Gregor
llvm-svn: 187994
|
|
|
|
|
|
| |
Patch by Che-Liang Chiou!
llvm-svn: 186967
|
|
|
|
| |
llvm-svn: 186647
|
|
|
|
|
|
|
|
| |
declaration was affected by "@optional"
rdar://14348525.
llvm-svn: 185722
|
|
|
|
| |
llvm-svn: 182660
|
|
|
|
|
|
| |
Patch by Seth Fowler.
llvm-svn: 182139
|
|
|
|
|
|
|
|
| |
module file where a module object came from.
rdar://13743084
llvm-svn: 180643
|
|
|
|
|
|
| |
Apparently there are...
llvm-svn: 180176
|
|
|
|
| |
llvm-svn: 180174
|
|
|
|
|
|
|
|
| |
of CXCursor_CXXThisExpr for C++ code.
rdar://13717006
llvm-svn: 180127
|
|
|
|
| |
llvm-svn: 179823
|
|
|
|
|
|
|
|
| |
given cursor is a variadic function or method.
rdar://13667150
llvm-svn: 179819
|
|
|
|
|
|
|
|
|
|
| |
Qualifiers' written next to the return and
parameter types in an ObjC method declarations.
rdar://13676977
llvm-svn: 179816
|
|
|
|
|
|
|
|
| |
written attributes in a property declaration.
rdar://13684512
llvm-svn: 179803
|
|
|
|
|
|
|
|
| |
resides in a system header.
This is a modified patch provided from Mikołaj Siedlarek!
llvm-svn: 179384
|
|
|
|
| |
llvm-svn: 179300
|
|
|
|
|
|
|
|
| |
of a C++ declaration within its parent scope.
Suggested by Stefan Seefeld.
llvm-svn: 179297
|
|
|
|
|
|
|
|
|
|
|
| |
clang_Type_getAlignOf
clang_Type_getSizeOf
clang_Type_getOffsetOf
clang_Cursor_isBitField
Patch by Loïc Jaquemet!
llvm-svn: 179251
|
|
|
|
|
|
| |
Patch by Matthias Kleine!
llvm-svn: 178475
|
|
|
|
|
|
|
|
|
|
|
| |
This allows resolving top-header filenames of modules to FileEntries when
we need them, not eagerly.
Note that that this breaks ABI for libclang functions
clang_Module_getTopLevelHeader / clang_Module_getNumTopLevelHeaders
but this is fine because they are experimental and not widely used yet.
llvm-svn: 176975
|
|
|
|
|
|
|
|
| |
return an enum,
as suggested by Jordan.
llvm-svn: 176732
|
|
|
|
|
|
|
|
|
|
|
| |
return a value.
Possible values are:
1 : if a parameter was invalid
-1 : if the callback returned CXVisit_Break,
otherwise returns 0.
llvm-svn: 176716
|
|
|
|
|
|
|
|
|
| |
all #import/#include directives in a specific file.
It passes to the visitor, that the caller provides, CXCursor_InclusionDirective cursors for
all the include directives in a particular file.
llvm-svn: 176682
|
|
|
|
| |
llvm-svn: 175936
|
|
|
|
| |
llvm-svn: 175912
|
|
|
|
|
|
|
|
|
| |
Adds a function clang_getTypeSpelling(CXType CT) that returns
a CXString containing the underlying type.
Patch by Ben Gertzfield.
llvm-svn: 175299
|
|
|
|
|
|
|
|
|
|
|
| |
for a CXFile containing device/inode/modification time.
Intended to be useful as a key associated with a unique file across
an indexing session.
rdar://13091837
llvm-svn: 173559
|
|
|
|
| |
llvm-svn: 172270
|
|
|
|
| |
llvm-svn: 172261
|
|
|
|
|
|
| |
const-correctness, and update all users
llvm-svn: 172252
|
|
|
|
| |
llvm-svn: 172037
|
|
|
|
|
|
|
|
|
| |
Uses of clang_getSpellingLocation should eventually move to calling
clang_getFileLocation, and clang_getSpellingLocation should do what
its name represents and actually point at the 'spelling' location, e.g.
inside a macro definition if the spelling of a token came from that.
llvm-svn: 171486
|