History log of /llvm-project/clang/lib/Sema/SemaCodeComplete.cpp (Results 276 – 300 of 748)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 81978014 09-Jun-2016 Olivier Goffart <ogoffart@woboq.com>

CIndex: add support for static_assert

Differential Revision: http://reviews.llvm.org/D18080

llvm-svn: 272273


Revision tags: llvmorg-3.8.1, llvmorg-3.8.1-rc1
# 301bc21f 19-May-2016 Richard Smith <richard-llvm@metafoo.co.uk>

Make Sema::getPrintingPolicy less ridiculously expensive. This used to perform
an identifier table lookup, *and* copy the LangOptions (including various
std::vector<std::string>s). Twice. We call thi

Make Sema::getPrintingPolicy less ridiculously expensive. This used to perform
an identifier table lookup, *and* copy the LangOptions (including various
std::vector<std::string>s). Twice. We call this function once each time we start
parsing a declaration specifier sequence, and once for each call to Sema::Diag.

This reduces the compile time for a sample .c file from the linux kernel by 20%.

llvm-svn: 270009

show more ...


# 5c716175 13-May-2016 Yaron Keren <yaron.keren@gmail.com>

Prune four superfluous ExternalSemaSource.h includes and one forward declaration in Sema.h
where ExternalSemaSource.h was already included due to ExternalSemaSource:: member uses.

llvm-svn: 269423


# 45d41326 11-May-2016 Andrey Bokhanko <andreybokhanko@gmail.com>

[MSVC] Implementation of __unaligned as a proper type qualifier

This patch implements __unaligned (MS extension) as a proper type qualifier
(before that, it was implemented as an ignored attribute).

[MSVC] Implementation of __unaligned as a proper type qualifier

This patch implements __unaligned (MS extension) as a proper type qualifier
(before that, it was implemented as an ignored attribute).

It also fixes PR27367 and PR27666.

Differential Revision: http://reviews.llvm.org/D20103

llvm-svn: 269220

show more ...


# 2801d32c 06-May-2016 Nico Weber <nicolasweber@gmx.de>

Revert r268727, it caused PR27666.

llvm-svn: 268736


# ba0d7540 06-May-2016 Andrey Bokhanko <andreybokhanko@gmail.com>

[MSVC] Implementation of __unaligned as a proper type qualifier

This patch implements __unaligned (MS extension) as a proper type qualifier
(before that, it was implemented as an ignored attribute).

[MSVC] Implementation of __unaligned as a proper type qualifier

This patch implements __unaligned (MS extension) as a proper type qualifier
(before that, it was implemented as an ignored attribute).

It also fixes PR27367.

Differential Revision: http://reviews.llvm.org/D19654

llvm-svn: 268727

show more ...


# 917fc9d7 15-Apr-2016 Nico Weber <nicolasweber@gmx.de>

Revert r266415, it broke parsing SDK headers (PR27367).

llvm-svn: 266431


# f7fa6348 15-Apr-2016 Andrey Bokhanko <andreybokhanko@gmail.com>

[MSVC Compat] Implementation of __unaligned (MS extension) as a type qualifier

This patch implements __unaligned as a type qualifier; before that, it was
modeled as an attribute. Proper mangling of

[MSVC Compat] Implementation of __unaligned (MS extension) as a type qualifier

This patch implements __unaligned as a type qualifier; before that, it was
modeled as an attribute. Proper mangling of __unaligned is implemented as well.
Some OpenCL code/tests are tangenially affected, as they relied on existing
number and sizes of type qualifiers.

Differential Revision: http://reviews.llvm.org/D18596

llvm-svn: 266415

show more ...


Revision tags: llvmorg-3.8.0, llvmorg-3.8.0-rc3
# 72dae62b 18-Feb-2016 Benjamin Kramer <benny.kra@googlemail.com>

[Parse] Code complete expressions in bracket declarators.

Currently we return no results when completing inside of the brackets in
a 'char foo[]' declaration. Let the generic expression completion c

[Parse] Code complete expressions in bracket declarators.

Currently we return no results when completing inside of the brackets in
a 'char foo[]' declaration. Let the generic expression completion code
handle it instead. We could get fancier here (e.g. filter non-constant
expressions in contexts where VLAs are not allowed), but it's a strict
improvement over the existing version.

llvm-svn: 261217

show more ...


Revision tags: llvmorg-3.8.0-rc2
# 5b786407 28-Jan-2016 Manman Ren <manman.ren@gmail.com>

Class Property: class property and instance property can have the same name.

Add "enum ObjCPropertyQueryKind" to a few APIs that used to only take the name
of the property: ObjCPropertyDecl::findPro

Class Property: class property and instance property can have the same name.

Add "enum ObjCPropertyQueryKind" to a few APIs that used to only take the name
of the property: ObjCPropertyDecl::findPropertyDecl,
ObjCContainerDecl::FindPropertyDeclaration,
ObjCInterfaceDecl::FindPropertyVisibleInPrimaryClass,
ObjCImplDecl::FindPropertyImplDecl, and Sema::ActOnPropertyImplDecl.

ObjCPropertyQueryKind currently has 3 values:
OBJC_PR_query_unknown, OBJC_PR_query_instance, OBJC_PR_query_class

This extra parameter specifies that we are looking for an instance property with
the given name, or a class property with the given name, or any property with
the given name (if both exist, the instance property will be returned).

rdar://23891898

llvm-svn: 259070

show more ...


# a7a8b1f2 26-Jan-2016 Manman Ren <manman.ren@gmail.com>

Use instance_properties instead of properties. NFC.

All current properties are instance properties.

This is the second patch in a series of patches to support class properties
in addition to instan

Use instance_properties instead of properties. NFC.

All current properties are instance properties.

This is the second patch in a series of patches to support class properties
in addition to instance properties in objective-c.

rdar://23891898

llvm-svn: 258824

show more ...


Revision tags: llvmorg-3.8.0-rc1
# f2005d3d 29-Dec-2015 Richard Smith <richard-llvm@metafoo.co.uk>

Model NamespaceAliasDecls as having their nominated namespace as an underlying
declaration. This fixes an issue where we would reject (due to a claimed
ambiguity) a case where lookup finds multiple N

Model NamespaceAliasDecls as having their nominated namespace as an underlying
declaration. This fixes an issue where we would reject (due to a claimed
ambiguity) a case where lookup finds multiple NamespaceAliasDecls from
different scopes that nominate the same namespace.

The C++ standard doesn't make it clear that such a case is in fact valid (which
I'm working on fixing), but there are no relevant rules that distinguish using
declarations and namespace alias declarations here, so it makes sense to treat
them the same way.

llvm-svn: 256601

show more ...


# 883dd332 24-Dec-2015 Craig Topper <craig.topper@gmail.com>

[Sema] ArrayRef-ize ParseObjCStringLiteral and CodeCompleteObjCProtocolReferences. NFC

llvm-svn: 256397


# db0ac557 18-Dec-2015 Richard Smith <richard-llvm@metafoo.co.uk>

Split RequireCompleteType into a function that actually requires that the type
is complete (with an error produced if not) and a function that merely queries
whether the type is complete. Either way

Split RequireCompleteType into a function that actually requires that the type
is complete (with an error produced if not) and a function that merely queries
whether the type is complete. Either way we'll trigger instantiation if
necessary, but only the former will diagnose and recover from missing module
imports.

The intent of this change is to prevent a class of bugs where code would call
RequireCompleteType(..., 0) and then ignore the result. With modules, we must
check the return value and use it to determine whether the definition of the
type is visible.

This also fixes a debug info quality issue: calls to isCompleteType do not
trigger the emission of debug information for a type in limited-debug-info
mode. This allows us to avoid emitting debug information for type definitions
in more cases where we believe it is safe to do so.

llvm-svn: 256049

show more ...


Revision tags: llvmorg-3.7.1, llvmorg-3.7.1-rc2, llvmorg-3.7.1-rc1
# 12126260 15-Nov-2015 Craig Topper <craig.topper@gmail.com>

[Sema] Use getLangOpts in Sema instead of Preprocessor. Call getTargetInfo on the AST context instead of Preprocessor. NFC

llvm-svn: 253175


# 8f3b187e 15-Nov-2015 Sergey Kalinichev <kalinichev.so.0@gmail.com>

[libclang] Visit TypeAliasTemplateDecl

This makes TypeAliasTemplateDecl accessible via LibClang and python bindings

Differential Revision: http://reviews.llvm.org/D13844

llvm-svn: 253166


# 460ce58f 22-Oct-2015 John McCall <rjmccall@apple.com>

Define weak and __weak to mean ARC-style weak references, even in MRC.

Previously, __weak was silently accepted and ignored in MRC mode.
That makes this a potentially source-breaking change that we

Define weak and __weak to mean ARC-style weak references, even in MRC.

Previously, __weak was silently accepted and ignored in MRC mode.
That makes this a potentially source-breaking change that we have to
roll out cautiously. Accordingly, for the time being, actual support
for __weak references in MRC is experimental, and the compiler will
reject attempts to actually form such references. The intent is to
eventually enable the feature by default in all non-GC modes.
(It is, of course, incompatible with ObjC GC's interpretation of
__weak.)

If you like, you can enable this feature with
-Xclang -fobjc-weak
but like any -Xclang option, this option may be removed at any point,
e.g. if/when it is eventually enabled by default.

This patch also enables the use of the ARC __unsafe_unretained qualifier
in MRC. Unlike __weak, this is being enabled immediately. Since
variables are essentially __unsafe_unretained by default in MRC,
the only practical uses are (1) communication and (2) changing the
default behavior of by-value block capture.

As an implementation matter, this means that the ObjC ownership
qualifiers may appear in any ObjC language mode, and so this patch
removes a number of checks for getLangOpts().ObjCAutoRefCount
that were guarding the processing of these qualifiers. I don't
expect this to be a significant drain on performance; it may even
be faster to just check for these qualifiers directly on a type
(since it's probably in a register anyway) than to do N dependent
loads to grab the LangOptions.

rdar://9674298

llvm-svn: 251041

show more ...


Revision tags: llvmorg-3.7.0, llvmorg-3.7.0-rc4, llvmorg-3.7.0-rc3, studio-1.4, llvmorg-3.7.0-rc2
# f0917ab7 24-Jul-2015 Argyrios Kyrtzidis <akyrtzi@gmail.com>

[code-completion] Strip outer nullability annotations when completing method implementations.

The outer nullability is transferred from the declaration to the implementation so including them is red

[code-completion] Strip outer nullability annotations when completing method implementations.

The outer nullability is transferred from the declaration to the implementation so including them is redundant.
The inner ones are not transferred so they are kept to match the exact types. When we transfer the inner ones as well
adding them in the implementation will become redundant and we should strip those as well.

rdar://21737451

llvm-svn: 243119

show more ...


Revision tags: llvmorg-3.7.0-rc1
# a4f8df0b 09-Jul-2015 Benjamin Kramer <benny.kra@googlemail.com>

[CodeCompletion] Don't crash on member inits of templated constructors.

Also fixes a crash (on invalid) member functions with a colon
initializer. PR23948.

llvm-svn: 241811


# 9b7b3e90 07-Jul-2015 Douglas Gregor <dgregor@apple.com>

[libclang] Replace ObjC generic parameters when code-completing method implementations.

rdar://20643768

llvm-svn: 241559


# 4c850f3a 07-Jul-2015 Douglas Gregor <dgregor@apple.com>

[libclang] Fix code-completion of block parameters that are marked with nullability specifier.

rdar://20755276

llvm-svn: 241558


# c3425b1f 07-Jul-2015 Douglas Gregor <dgregor@apple.com>

[libclang] Replace ObjC generic parameters in code-completion results.

rdar://19369529

llvm-svn: 241557


# 85f3f951 07-Jul-2015 Douglas Gregor <dgregor@apple.com>

Parsing, semantic analysis, and AST for Objective-C type parameters.

Produce type parameter declarations for Objective-C type parameters,
and attach lists of type parameters to Objective-C classes,

Parsing, semantic analysis, and AST for Objective-C type parameters.

Produce type parameter declarations for Objective-C type parameters,
and attach lists of type parameters to Objective-C classes,
categories, forward declarations, and extensions as
appropriate. Perform semantic analysis of type bounds for type
parameters, both in isolation and across classes/categories/extensions
to ensure consistency.

Also handle (de-)serialization of Objective-C type parameter lists,
along with sundry other things one must do to add a new declaration to
Clang.

Note that Objective-C type parameters are typedef name declarations,
like typedefs and C++11 type aliases, in support of type erasure.

Part of rdar://problem/6294649.

llvm-svn: 241541

show more ...


# aea7afdc 24-Jun-2015 Douglas Gregor <dgregor@apple.com>

Replace __double_underscored type nullability qualifiers with _Uppercase_underscored

Addresses a conflict with glibc's __nonnull macro by renaming the type
nullability qualifiers as follows:

__no

Replace __double_underscored type nullability qualifiers with _Uppercase_underscored

Addresses a conflict with glibc's __nonnull macro by renaming the type
nullability qualifiers as follows:

__nonnull -> _Nonnull
__nullable -> _Nullable
__null_unspecified -> _Null_unspecified

This is the major part of rdar://problem/21530726, but does not yet
provide the Darwin-specific behavior for the old names.

llvm-svn: 240596

show more ...


Revision tags: llvmorg-3.6.2, llvmorg-3.6.2-rc1
# ab9db510 22-Jun-2015 Alexander Kornienko <alexfh@google.com>

Revert r240270 ("Fixed/added namespace ending comments using clang-tidy").

llvm-svn: 240353


1...<<11121314151617181920>>...30