Benjamin Kramer
642f173ae9
Switch users of the 'for (StmtRange range = stmt->children(); range; ++range)‘ pattern to range for loops.
...
The pattern was born out of the lack of range-based for loops in C++98
and is somewhat obscure. No functionality change intended.
llvm-svn: 241300
2015-07-02 21:03:14 +00:00
Alexander Kornienko
ab9db51042
Revert r240270 ("Fixed/added namespace ending comments using clang-tidy").
...
llvm-svn: 240353
2015-06-22 23:07:51 +00:00
Alexander Kornienko
3d9d929e42
Fixed/added namespace ending comments using clang-tidy. NFC
...
The patch is generated using this command:
$ tools/extra/clang-tidy/tool/run-clang-tidy.py -fix \
-checks=-*,llvm-namespace-comment -header-filter='llvm/.*|clang/.*' \
work/llvm/tools/clang
To reduce churn, not touching namespaces spanning less than 10 lines.
llvm-svn: 240270
2015-06-22 09:47:44 +00:00
Benjamin Kramer
3204b152b5
Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types
...
If the type isn't trivially moveable emplace can skip a potentially
expensive move. It also saves a couple of characters.
Call sites were found with the ASTMatcher + some semi-automated cleanup.
memberCallExpr(
argumentCountIs(1), callee(methodDecl(hasName("push_back"))),
on(hasType(recordDecl(has(namedDecl(hasName("emplace_back")))))),
hasArgument(0, bindTemporaryExpr(
hasType(recordDecl(hasNonTrivialDestructor())),
has(constructExpr()))),
unless(isInTemplateInstantiation()))
No functional change intended.
llvm-svn: 238601
2015-05-29 19:42:19 +00:00
Richard Smith
20e883e59b
[modules] Stop trying to fake up a linear MacroDirective history.
...
Modules builds fundamentally have a non-linear macro history. In the interest
of better source fidelity, represent the macro definition information
faithfully: we have a linear macro directive history within each module, and at
any point we have a unique "latest" local macro directive and a collection of
visible imported directives. This also removes the attendent complexity of
attempting to create a correct MacroDirective history (which we got wrong
in the general case).
No functionality change intended.
llvm-svn: 236176
2015-04-29 23:20:19 +00:00
Alexander Kornienko
34eb20725d
Use 'override/final' instead of 'virtual' for overridden methods
...
Summary:
The patch is generated using clang-tidy misc-use-override check.
This command was used:
tools/clang/tools/extra/clang-tidy/tool/run-clang-tidy.py \
-checks='-*,misc-use-override' -header-filter='llvm|clang' -j=32 -fix
Reviewers: dblaikie
Reviewed By: dblaikie
Subscribers: klimek, cfe-commits
Differential Revision: http://reviews.llvm.org/D8926
llvm-svn: 234678
2015-04-11 02:00:23 +00:00
Fariborz Jahanian
e1b9843375
[Objective-C SDK modernizer]. Patch to convert setter/getter
...
methods in protocols to their respective property
declarations. rdar://19372798
llvm-svn: 233977
2015-04-02 21:36:03 +00:00
Fariborz Jahanian
98253306f3
[SDK modernizer PATCH]. Fixes a bug whereby a call to super
...
was not converted to property-dot syntax by removing an unused
code. rdar://19140267
llvm-svn: 233019
2015-03-23 20:52:26 +00:00
Fariborz Jahanian
7b012d3728
[SDK modernizer] Patch to fix type of the typed enums when
...
migrating to NS_ENUM typedef. rdar://19994496
llvm-svn: 231036
2015-03-02 23:58:02 +00:00
Richard Smith
cf4bdde33a
Cleanup: remove artificial division between lookup results and const lookup
...
results. No-one was ever modifying a lookup result, and it would not be
reasonable to do so.
llvm-svn: 230123
2015-02-21 02:45:19 +00:00
Fariborz Jahanian
4732d43cc2
Objective-C SDK modernizer to use NS_ENUM/NS_OPTIONS macros
...
with typed enums. rdar://19352510
llvm-svn: 227104
2015-01-26 17:41:03 +00:00
Fariborz Jahanian
f9317f1586
Objective-C moderinzer [qoi], add space on rhs when needed when
...
converting to property-dot syntax for setters.
rdar://19381786
llvm-svn: 226944
2015-01-23 21:58:46 +00:00
Fariborz Jahanian
30609b8a78
Objective-C modernizer. Avoid using property-dot syntax when
...
receiver type is not valid for property-dot syntz use.
rdar://19381786
llvm-svn: 226927
2015-01-23 19:23:42 +00:00
Fariborz Jahanian
1406c878cb
Objective-C SDK modernizer. When modernizing an enum to
...
NS_ENUM/NS_OPTIONS use the underlying type if there is
no associated type. rdar://19198042
llvm-svn: 223934
2014-12-10 18:25:24 +00:00
Fariborz Jahanian
df833a4918
Objective-C SDK modernizer. Modernize to use
...
property-dot-syntax when receiver is 'super'.
rdar://19140267
llvm-svn: 223846
2014-12-09 22:36:47 +00:00
David Blaikie
3c8c46efd7
clang-format a recent commit I made
...
llvm-svn: 222317
2014-11-19 05:48:40 +00:00
David Blaikie
13156b689e
Standardize on StringMap::insert, removing uses of StringMap::GetOrCreateValue.
...
llvm-svn: 222306
2014-11-19 03:06:06 +00:00
Fariborz Jahanian
a6556f7295
Objective-C SDK modernization tool. Use its own option
...
,-objcmt-migrate-property-dot-syntax, when migarting to use
property-dot syntax in place of messaging expression.
rdar://18839124
llvm-svn: 221001
2014-10-31 21:19:45 +00:00
Fariborz Jahanian
d2241bf561
Objective-C SDK modernization. import Foundation even
...
when a previous definition of NS_OPTION is available
; e.g. from a pch. enhancement to rdar://18498550
llvm-svn: 219448
2014-10-09 22:04:27 +00:00
Fariborz Jahanian
ed6de56c77
Objective-C SDK modernization. convert message expression
...
to Objective-C dot-syntax. rdar://18498572
llvm-svn: 219424
2014-10-09 18:30:56 +00:00
Fariborz Jahanian
80ebf8da7e
Objective-C SDK modernization. When modernizing to
...
use NS_ENUM/NS_OPTIONS macros, add an import of
Foundation.h (or its module) as necessary.
rdar://18498550
llvm-svn: 219225
2014-10-07 19:01:46 +00:00
Fariborz Jahanian
35ee87debe
Objective-C SDK modernizer. Patch to support modernization
...
to NS_ENUM/NS_OPTION macros when typedef names are other
than NSInteger/NSUInteger (int8_t, etc.).
rdar://18532199
llvm-svn: 219173
2014-10-06 23:50:37 +00:00
Fariborz Jahanian
77a835bf56
Objective-C Modernizer. Patch to remove dangling space
...
before the semicolon wahen modernizing to use
NS_ENUM/NS_OPTIONS macros. rdar://18498539
llvm-svn: 218809
2014-10-01 20:46:32 +00:00
Fariborz Jahanian
18625ee75c
Objective-C SDK modernizer. Do not modernize an enum
...
which already has the underlying interger type specification.
// rdar://1826225
llvm-svn: 217783
2014-09-15 16:41:47 +00:00
Craig Topper
b8a7053055
Unique_ptrify PPCallbacks ownership.
...
Unique_ptr creation stil needs to be moved earlier at some of the call sites.
llvm-svn: 217474
2014-09-10 04:53:53 +00:00
Rafael Espindola
85d7892459
Update for llvm API change.
...
llvm-svn: 216576
2014-08-27 19:03:27 +00:00
Craig Topper
5fc8fc2d31
Simplify creation of a bunch of ArrayRefs by using None, makeArrayRef or just letting them be implicitly created.
...
llvm-svn: 216528
2014-08-27 06:28:36 +00:00
Rafael Espindola
dae941a6c8
Update for llvm api change.
...
llvm-svn: 216397
2014-08-25 18:17:04 +00:00
Craig Topper
c6914d068f
Use range based for loops to avoid needing to re-mention SmallPtrSet size.
...
llvm-svn: 216370
2014-08-25 04:15:02 +00:00
Rafael Espindola
8d04452973
Use the pointer-like API of ErrorOr.
...
Thanks to David Blaikie for the suggestion.
llvm-svn: 215866
2014-08-17 23:31:27 +00:00
Rafael Espindola
1a1b1562e6
Use std::unique_ptr in a few methods that take ownership.
...
llvm-svn: 215864
2014-08-17 23:12:27 +00:00
Rafael Espindola
b3402685f6
Update for llvm api changes.
...
llvm-svn: 215856
2014-08-17 22:20:41 +00:00
David Blaikie
6beb6aa8f0
Recommit 213307: unique_ptr-ify ownership of ASTConsumers (reverted in r213325)
...
After post-commit review and community discussion, this seems like a
reasonable direction to continue, making ownership semantics explicit in
the source using the type system.
llvm-svn: 215323
2014-08-10 19:56:51 +00:00
David Blaikie
62a56f39b7
Revert "unique_ptr-ify ownership of ASTConsumers"
...
This reverts commit r213307.
Reverting to have some on-list discussion/confirmation about the ongoing
direction of smart pointer usage in the LLVM project.
llvm-svn: 213325
2014-07-17 22:34:12 +00:00
David Blaikie
a51666a4d6
unique_ptr-ify ownership of ASTConsumers
...
(after fixing a bug in MultiplexConsumer I noticed the ownership of the
nested consumers was implemented with raw pointers - so this fixes
that... and follows the source back to its origin pushing unique_ptr
ownership up through there too)
llvm-svn: 213307
2014-07-17 20:40:36 +00:00
Rafael Espindola
2d2b420ab9
Update for llvm api change.
...
llvm-svn: 212408
2014-07-06 17:43:24 +00:00
Craig Topper
00bbdcf9b3
Remove llvm:: from uses of ArrayRef.
...
llvm-svn: 211987
2014-06-28 23:22:23 +00:00
Rafael Espindola
c080917ec2
Replace llvm::error_code with std::error_code.
...
llvm-svn: 210780
2014-06-12 14:02:15 +00:00
Argyrios Kyrtzidis
c02a0dbe41
[objcmt] Make sure we don't edit the return type to add 'instancetype' if the return type is already that.
...
rdar://16961577
llvm-svn: 209264
2014-05-21 00:24:20 +00:00
Craig Topper
8ae1203992
[C++11] Use 'nullptr'.
...
llvm-svn: 208163
2014-05-07 06:21:57 +00:00
Argyrios Kyrtzidis
7dd3133433
[objcmt] Revert r191796, it's not needed anymore.
...
rdar://16223810
llvm-svn: 207391
2014-04-28 02:38:51 +00:00
Craig Topper
b45acb8a16
[C++11] Add 'override' keyword to virtual methods that override their base class.
...
llvm-svn: 203893
2014-03-14 06:02:07 +00:00
Aaron Ballman
f26acce6f7
[C++11] Replacing ObjCContainerDecl iterators instmeth_begin() and instmeth_end() with iterator_range instance_methods(). Updating all of the usages of the iterators with range-based for loops.
...
llvm-svn: 203839
2014-03-13 19:50:17 +00:00
Aaron Ballman
d174edffa0
Renaming the recently-created (r203830) props() range API to properties() for clarity.
...
llvm-svn: 203835
2014-03-13 19:11:50 +00:00
Aaron Ballman
aff18c0446
[C++11] Replacing ObjCContainerDecl iterators meth_begin() and meth_end() with iterator_range methods(). Updating all of the usages of the iterators with range-based for loops.
...
llvm-svn: 203832
2014-03-13 19:03:34 +00:00
Aaron Ballman
dc4bea4676
[C++11] Replacing ObjCContainerDecl iterators prop_begin() and prop_end() with iterator_range props(). Updating all of the usages of the iterators with range-based for loops.
...
llvm-svn: 203830
2014-03-13 18:47:37 +00:00
Aaron Ballman
23a6dcb365
[C++11] Replacing EnumDecl iterators enumerator_begin() and enumerator_end() with iterator_range enumerators(). Updating all of the usages of the iterators with range-based for loops.
...
llvm-svn: 203353
2014-03-08 18:45:14 +00:00
Ahmed Charles
b89843299a
Replace OwningPtr with std::unique_ptr.
...
This compiles cleanly with lldb/lld/clang-tools-extra/llvm.
llvm-svn: 203279
2014-03-07 20:03:18 +00:00
Ahmed Charles
9a16beb8bc
Change OwningPtr::take() to OwningPtr::release().
...
This is a precursor to moving to std::unique_ptr.
llvm-svn: 203275
2014-03-07 19:33:25 +00:00
Benjamin Kramer
867ea1d426
[C++11] Replace llvm::tie with std::tie.
...
llvm-svn: 202639
2014-03-02 13:01:17 +00:00