| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
llvm-svn: 208249
|
|
|
|
| |
llvm-svn: 208247
|
|
|
|
|
|
|
|
|
|
|
|
| |
this is wasteful, blah blah, but this is a test utility only. It turns
out that without doing this, libxml2 will always leak a bunch of the XML
data, and that is causing failures with LSan. This is also quite a bit
simpler and I don't think it is slow enough to really be a show stopper.
If someone yells about the runtime of c-index-test, we can do other
things to try to mitigate it, but the current strategy wasn't working
well.
llvm-svn: 207882
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It's possible that the "comment AST" may be replaced or split out in the
midterm, any anyway this makes the headers easier to read.
Developers don't currently need to include "clang-c/Documentation.h" explicitly
and there's no macro to test for availability yet.
The raw comment and brief comment accessors have been kept in Index.h though
brief support may also move here as a separate proposal.
This is not a deprecation, just a gentle separation of concerns as we look to
simplify the built-in representation of comment nodes and support external
comment processors.
llvm-svn: 207392
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The change was landed without review or test cases.
It trivially broke almost any stable application checking for Severity >=
CXDiagnostic_Error or indeed any other kind of severity comparison upon
encountering a 'remark'.
Mapped to CXDiagnostic_Warning until a workable solution is proposed to the
list that preserves API stability.
(It's also not clear why the rest of r202475 wasn't simply implemented as a
modifier to the existing 'warning' level.)
llvm-svn: 207319
|
|
|
|
|
|
| |
The result of clang_getCursorSpelling() needs to be clang_getCursorSpelling()ed.
llvm-svn: 207073
|
|
|
|
|
|
|
|
|
| |
The idea is to give visibility to more type kinds, especially for getting
a better grasp of what appears as unexposed type kind with libclang.
Differential Revision: http://reviews.llvm.org/D3325
llvm-svn: 205921
|
|
|
|
|
|
|
|
| |
member function or member function template is declared 'const'
Patch by Kevin Funk with testcase updates by me.
llvm-svn: 205714
|
|
|
|
| |
llvm-svn: 203169
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
A 'remark' is information that is not an error or a warning, but rather some
additional information provided to the user. In contrast to a 'note' a 'remark'
is an independent diagnostic, whereas a 'note' always depends on another
diagnostic.
A typical use case for remark nodes is information provided to the user, e.g.
information provided by the vectorizer about loops that have been vectorized.
This patch provides the initial implementation of 'remarks'. It includes the
actual definiton of the remark nodes, their printing as well as basic parameter
handling. We are reusing the existing diagnostic parameters which means a remark
can be enabled with normal '-Wdiagnostic-name' flags and can be upgraded to
an error using '-Werror=diagnostic-name'. '-Werror' alone does not upgrade
remarks.
This patch is by intention minimal in terms of parameter handling. More
experience and more discussions will most likely lead to further enhancements
in the parameter handling.
llvm-svn: 202475
|
|
|
|
|
|
|
|
|
|
| |
clang_Type_getTemplateArgument
Note that these functions don't handle variadic templates -- see tests.
Patch by Matthieu Nottale and Philippe Daouadi.
llvm-svn: 202406
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
With the old use of -std=c89 off_t is not defined and the build fails.
This seems to be another variation of
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40278.
llvm-svn: 198748
|
|
|
|
|
|
| |
CMakeLists.txt.
llvm-svn: 196916
|
|
|
|
|
|
|
|
| |
future-proof.
Suggested by Alp Toker.
llvm-svn: 196591
|
|
|
|
|
|
|
|
| |
is more
Windows friendly than the colon.
llvm-svn: 196529
|
|
|
|
|
|
|
|
| |
libclang.
Patch by Erik Verbruggen!
llvm-svn: 196487
|
|
|
|
|
|
|
|
| |
at a particular reparsing iteration.
Passing '-remap-file-1=from:to' will remap the files in the second iteration.
llvm-svn: 196486
|
|
|
|
|
|
|
|
| |
separator.
lldb does not like semicolon as part of an option.
llvm-svn: 196485
|
|
|
|
|
|
|
|
| |
ref-qualifier information of function type.
Patch by Che-Liang Chiou!
llvm-svn: 192493
|
|
|
|
|
|
| |
clangIndex.
llvm-svn: 188621
|
|
|
|
| |
llvm-svn: 186872
|
|
|
|
|
|
| |
warning: initializer for aggregate is not a compile-time constant [-Wc99-extensions]
llvm-svn: 186833
|
|
|
|
|
|
| |
include_directories(SYSTEM).
llvm-svn: 185928
|
|
|
|
|
|
|
|
|
| |
-Wdocumentation.
-Wdocumentation won't seek -isystem. LIBXML2's headers in a certain distro might be incompatible to -Wdocumentation.
FIXME: Could autoconf detect clang or availability of -isystem?
llvm-svn: 185927
|
|
|
|
|
|
|
|
| |
declaration was affected by "@optional"
rdar://14348525.
llvm-svn: 185722
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The big changes are:
- Deleting Driver/(Arg|Opt)*
- Rewriting includes to llvm/Option/ and re-sorting
- 'using namespace llvm::opt' in clang::driver
- Fixing the autoconf build by adding option everywhere
As discussed in the review, this change includes using directives in
header files. I'll make follow up changes to remove those in favor of
name specifiers.
Reviewers: espindola
Differential Revision: http://llvm-reviews.chandlerc.com/D975
llvm-svn: 183989
|
|
|
|
|
|
| |
Patch by Seth Fowler.
llvm-svn: 182139
|
|
|
|
|
|
|
|
| |
module file where a module object came from.
rdar://13743084
llvm-svn: 180643
|
|
|
|
|
|
|
|
|
| |
if modules are enabled.
The preprocessing record becomes important when modules are enabled, since it is used to calculate the
module cache hash.
llvm-svn: 180635
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
functionality.
llvm-svn: 179123
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
Patch by Guy Benyei!
llvm-svn: 176806
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
These all appear in comments or (ironically) diagnostics output.
llvm-svn: 176383
|
|
|
|
|
|
|
|
|
| |
Adds a function clang_getTypeSpelling(CXType CT) that returns
a CXString containing the underlying type.
Patch by Ben Gertzfield.
llvm-svn: 175299
|
|
|
|
|
|
| |
"Note that 'USEDLIBS' must include all of the core clang libraries when -static is given to linker on cygming."
llvm-svn: 173124
|
|
|
|
|
|
|
|
| |
c-index-test.
They don't link cygclang.dll, but libclang.a on cygwin.
llvm-svn: 172980
|
|
|
|
|
|
| |
hosts.
llvm-svn: 170693
|
|
|
|
| |
llvm-svn: 170692
|
|
|
|
|
|
| |
Patch from Edwin Vane!
llvm-svn: 170366
|
|
|
|
| |
llvm-svn: 170225
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that were already parsed in the same "indexing session".
An indexing session is defined as using the same CXIndexAction object
for multiple clang_indexSourceFile calls.
Passing CXIndexOpt_SkipParsedBodiesInSession as an indexing option will
enable the mode where we try to skip bodies that were already parsed in
another translation unit.
If a function's body was skipped, the "flags" field in the CXIdxDeclInfo
structure will have "CXIdxDeclFlag_Skipped" bit was set.
llvm-svn: 169539
|