History log of /llvm-project/clang/tools/libclang/CXCursor.cpp (Results 251 – 275 of 322)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# df14b3a8 11-Oct-2011 Eli Friedman <eli.friedman@gmail.com>

Initial implementation of __atomic_* (everything except __atomic_is_lock_free).

llvm-svn: 141632


# cddafd39 06-Oct-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com>

[libclang] Introduce clang_findReferencesInFile which accepts a cursor, a file,
and a callback and finds all identifier references of the cursor in the file.

rdar://7948304

llvm-svn: 141277


# 3b947f72 06-Oct-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com>

[libclang] Move the bulk of clang_getOverriddenCursors into
a cxcursor::getOverriddenCursors C++ function, because SmallVectors
are groovier that malloc'ing buffers.

llvm-svn: 141276


# 4c362d53 05-Oct-2011 Douglas Gregor <dgregor@apple.com>

Expose more statement, expression, and declaration kinds in libclang,
from Manuel Holtgrewe!

llvm-svn: 141200


# a1bcb6ad 27-Sep-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com>

MSVC is stuck in the 80s.

llvm-svn: 140597


# d6e9fa55 27-Sep-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com>

[libclang] Introduce clang_Cursor_isNull and clang_Cursor_getTranslationUnit functions.

llvm-svn: 140587


# 4cdfcae7 26-Sep-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com>

Don't map a file:line:col triplet that is inside the preamble range to
a "loaded" location of the precompiled preamble.

Instead, handle specially locations of preprocessed entities:
-When looking up

Don't map a file:line:col triplet that is inside the preamble range to
a "loaded" location of the precompiled preamble.

Instead, handle specially locations of preprocessed entities:
-When looking up for preprocessed entities, map main file locations inside the
preamble range to a preamble loaded location.
-When getting the source range of a preprocessing cursor, map preamble loaded
locations back to main file locations.

Fixes rdar://10175093 & http://llvm.org/PR10999

llvm-svn: 140519

show more ...


# 2cb4e3c5 13-Sep-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com>

[libclang]
-Allow cursor visitation of an attribute using its source range
-Add C++ 'final' and 'override' attributes as cursor kinds
-Simplify the logic that marks 'final' and 'override' attributes

[libclang]
-Allow cursor visitation of an attribute using its source range
-Add C++ 'final' and 'override' attributes as cursor kinds
-Simplify the logic that marks 'final' and 'override' attributes as tokens.

llvm-svn: 139609

show more ...


# 349c403b 10-Aug-2011 Douglas Gregor <dgregor@apple.com>

Switch a C-style cast over to a const_cast. No functionality change

llvm-svn: 137218


# 3f35bb2d 04-Aug-2011 Douglas Gregor <dgregor@apple.com>

Add a new libclang API to return a CXCompletionString for an arbitrary
cursor, from Connor Wakamo! Addresses <rdar://problem/9087798>.

llvm-svn: 136911


# 7c454bb8 15-Jul-2011 John McCall <rjmccall@apple.com>

Create a new expression node, SubstNonTypeTemplateParmExpr,
to represent a fully-substituted non-type template parameter.
This should improve source fidelity, as well as being generically
useful for

Create a new expression node, SubstNonTypeTemplateParmExpr,
to represent a fully-substituted non-type template parameter.
This should improve source fidelity, as well as being generically
useful for diagnostics and such.

llvm-svn: 135243

show more ...


# 9e4704ab 14-Jul-2011 Chandler Carruth <chandlerc@gmail.com>

Update all of the libclang code corresponding to the preprocessor
MacroInstantiation -> MacroExpansion rename. Internally, everything is
switched.

Introduce a new cursor kind enum with the new name,

Update all of the libclang code corresponding to the preprocessor
MacroInstantiation -> MacroExpansion rename. Internally, everything is
switched.

Introduce a new cursor kind enum with the new name, but retain the old
name as an alias so that we don't break backwards compatibility.

Also update the debug printing routine to use 'macro expansions' as its
explicitly not guaranteed to be stable, and mechanically switch the test
cases over to that.

llvm-svn: 135140

show more ...


# a88a2218 14-Jul-2011 Chandler Carruth <chandlerc@gmail.com>

Move the rest of the preprocessor terminology from 'instantiate' and
variants to 'expand'. This changed a couple of public APIs, including
one public type "MacroInstantiation" which is now "MacroExpa

Move the rest of the preprocessor terminology from 'instantiate' and
variants to 'expand'. This changed a couple of public APIs, including
one public type "MacroInstantiation" which is now "MacroExpansion". The
rest of the codebase was updated to reflect this, especially the
libclang code. Two of the C++ (and thus easily changed) libclang APIs
were updated as well because they pertained directly to the old
MacroInstantiation class.

No functionality changed.

llvm-svn: 135139

show more ...


# 8bb2ecf3 29-Jun-2011 Argyrios Kyrtzidis <akyrtzi@gmail.com>

[libclang] Introduce cxcursor::getCursorParentDecl(CXCursor Cursor) and use it at the appropriate place in CIndex.cpp
No functionality change.

llvm-svn: 134104


# fe31481f 21-Jun-2011 Douglas Gregor <dgregor@apple.com>

Introduce a new AST node describing reference binding to temporaries.

MaterializeTemporaryExpr captures a reference binding to a temporary
value, making explicit that the temporary value (a prvalue)

Introduce a new AST node describing reference binding to temporaries.

MaterializeTemporaryExpr captures a reference binding to a temporary
value, making explicit that the temporary value (a prvalue) needs to
be materialized into memory so that its address can be used. The
intended AST invariant here is that a reference will always bind to a
glvalue, and MaterializeTemporaryExpr will be used to convert prvalues
into glvalues for that binding to happen. For example, given

const int& r = 1.0;

The initializer of "r" will be a MaterializeTemporaryExpr whose
subexpression is an implicit conversion from the double literal "1.0"
to an integer value.

IR generation benefits most from this new node, since it was
previously guessing (badly) when to materialize temporaries for the
purposes of reference binding. There are likely more refactoring and
cleanups we could perform there, but the introduction of
MaterializeTemporaryExpr fixes PR9565, a case where IR generation
would effectively bind a const reference directly to a bitfield in a
struct. Addresses <rdar://problem/9552231>.

llvm-svn: 133521

show more ...


# 31168b07 15-Jun-2011 John McCall <rjmccall@apple.com>

Automatic Reference Counting.

Language-design credit goes to a lot of people, but I particularly want
to single out Blaine Garst and Patrick Beard for their contributions.

Compiler implementation c

Automatic Reference Counting.

Language-design credit goes to a lot of people, but I particularly want
to single out Blaine Garst and Patrick Beard for their contributions.

Compiler implementation credit goes to Argyrios, Doug, Fariborz, and myself,
in no particular order.

llvm-svn: 133103

show more ...


# 55808c10 04-Jun-2011 Tanya Lattner <tonic@nondot.org>

Add support for builtin astype:
__builtin_astype(): Used to reinterpreted as another data type of the same size using for both scalar and vector data types.
Added test case.

llvm-svn: 132612


# 1c0675e1 28-Apr-2011 John Wiegley <johnw@boostpro.com>

Parsing/AST support for Structured Exception Handling

Patch authored by Sohail Somani.

Provide parsing and AST support for Windows structured exception handling.

llvm-svn: 130366


# 6242b6a6 28-Apr-2011 John Wiegley <johnw@boostpro.com>

Implementation of Embarcadero array type traits

Patch authored by John Wiegley.

These are array type traits used for parsing code that employs certain
features of the Embarcadero C++ compiler: __ar

Implementation of Embarcadero array type traits

Patch authored by John Wiegley.

These are array type traits used for parsing code that employs certain
features of the Embarcadero C++ compiler: __array_rank(T) and
__array_extent(T, Dim).

llvm-svn: 130351

show more ...


# f9f6584e 25-Apr-2011 John Wiegley <johnw@boostpro.com>

t/clang/expr-traits

Patch authored by David Abrahams.

These two expression traits (__is_lvalue_expr, __is_rvalue_expr) are used for
parsing code that employs certain features of the Embarcadero C++

t/clang/expr-traits

Patch authored by David Abrahams.

These two expression traits (__is_lvalue_expr, __is_rvalue_expr) are used for
parsing code that employs certain features of the Embarcadero C++ compiler.

llvm-svn: 130122

show more ...


# 91147596 15-Apr-2011 Peter Collingbourne <peter@pcc.me.uk>

C1X: implement generic selections

As an extension, generic selection support has been added for all
supported languages. The syntax is the same as for C1X.

llvm-svn: 129554


# 02e85f3b 14-Apr-2011 Richard Smith <richard-llvm@metafoo.co.uk>

Add support for C++0x's range-based for loops, as specified by the C++11 draft standard (N3291).

llvm-svn: 129541


Revision tags: llvmorg-2.9.0, llvmorg-2.9.0-rc3, llvmorg-2.9.0-rc2
# e190dee7 11-Mar-2011 Peter Collingbourne <peter@pcc.me.uk>

Add support for the OpenCL vec_step operator, by generalising and
extending the existing support for sizeof and alignof. Original
patch by Guy Benyei.

llvm-svn: 127475


Revision tags: llvmorg-2.9.0-rc1
# c07a0c7e 17-Feb-2011 John McCall <rjmccall@apple.com>

Change the representation of GNU ?: expressions to use a different expression
class and to bind the shared value using OpaqueValueExpr. This fixes an
unnoticed problem with deserialization of these

Change the representation of GNU ?: expressions to use a different expression
class and to bind the shared value using OpaqueValueExpr. This fixes an
unnoticed problem with deserialization of these expressions where the
deserialized form would lose the vital pointer-equality trait; or rather,
it fixes it because this patch also does the right thing for deserializing
OVEs.

Change OVEs to not be a "temporary object" in the sense that copy elision is
permitted.

This new representation is not totally unawkward to work with, but I think
that's really part and parcel with the semantics we're modelling here. In
particular, it's much easier to fix things like the copy elision bug and to
make the CFG look right.

I've tried to update the analyzer to deal with this in at least some
obvious cases, and I think we get a much better CFG out, but the printing
of OpaqueValueExprs probably needs some work.

llvm-svn: 125744

show more ...


# 41f85462 09-Feb-2011 Peter Collingbourne <peter@pcc.me.uk>

AST, Sema, Serialization: add CUDAKernelCallExpr and related semantic actions

llvm-svn: 125217


1...<<111213