| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
toolchain first and check the path existence. If the path does not
exist build and check a path suffix for Code Sourcery toolchain.
llvm-svn: 195751
|
| |
|
|
| |
llvm-svn: 195750
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
getStringSplit used to crash, when trying to split a long string
literal containing both printable and unprintable multi-byte UTF-8 characters.
Reviewers: djasper, klimek
Reviewed By: djasper
CC: cfe-commits, klimek
Differential Revision: http://llvm-reviews.chandlerc.com/D2268
llvm-svn: 195728
|
| |
|
|
| |
llvm-svn: 195714
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
GNU libc uses '__uptr' as a member name in C mode, conflicting with the
eponymous MSVC pointer modifier keyword.
Detect and mark the token as an identifier when these specific conditions are
met. __uptr will continue to work as a keyword for the remainder of the
translation unit.
Fixes PR17824.
llvm-svn: 195710
|
| |
|
|
| |
llvm-svn: 195703
|
| |
|
|
| |
llvm-svn: 195690
|
| |
|
|
|
|
| |
downstream code.
llvm-svn: 195687
|
| |
|
|
|
|
|
| |
The integrated assembler was already the default for win32. It is now able
to handle a clang bootstrap on mingw, so make it the default.
llvm-svn: 195676
|
| |
|
|
|
|
|
|
| |
Attr.td. Also updated the related testcase.
Reviewed by Dmitri Gribenko.
llvm-svn: 195675
|
| |
|
|
| |
llvm-svn: 195673
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It wasn't possible for an anonymous type to show up inside of function arguments.
However, decltype (which MSVC added support for in 2010) makes this
possible. Further, backrefs to these anonymous types can now be formed.
This fixes PR18022.
N.B. We do not, and very likely _will not_, support MSVC's bug where
subsequent typedefs of anonymous types leak into the linkage name; this
is a gross violation of the ABI. A warning should be introduced to
inform our users of this particular shortcoming.
llvm-svn: 195669
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: Another pass at adding missing matchers into the registry.
Reviewers: klimek
CC: cfe-commits, revane, klimek
Differential Revision: http://llvm-reviews.chandlerc.com/D2253
llvm-svn: 195647
|
| |
|
|
|
|
| |
Patch by Oliver Stannard.
llvm-svn: 195641
|
| |
|
|
| |
llvm-svn: 195638
|
| |
|
|
|
|
|
|
| |
No functional changes intended. However, it seems to have found a buggy
behavior in one of the tests. I think this structure is generally
desirable and it will make a planned bugfix significantly easier.
llvm-svn: 195634
|
| |
|
|
| |
llvm-svn: 195626
|
| |
|
|
|
|
| |
whether a defaulted special member function should be deleted.
llvm-svn: 195620
|
| |
|
|
| |
llvm-svn: 195589
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
clang's attribute support is mature by now so replace Sean's warning and email
address with a standard LLVM copyright heading.
Also remove a personal email address and credit docstring from CGObjCGNU that
shouldn't have been there.
This is in line with the LLVM developer policy introduced in r45410.
Contributors can add themselves to CREDITS.txt while active module owners are
listed in CODE_OWNERS.TXT.
llvm-svn: 195587
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Clang still has support for running gcc for performing various stages
of a build. Right now it looks like this is used for
* Supporting Fortran in the clang driver
* Running an assembler or linker in systems we don't yet know how to
run them directly.
It looks like the gcc::Precompile is a vestige from the days when we
supported using clang for C and running gcc for c++. This patch removes it
(yes, we have no tests for it).
llvm-svn: 195586
|
| |
|
|
|
|
|
|
|
|
|
| |
This is currently unused by any test. The code path would still be hit
by clang on ppc, but
* PPC has not been supported on current versions of OS X
* A port of current clang to older OS X on ppc should be using
toolchains::DarwinClang.
llvm-svn: 195585
|
| |
|
|
|
|
| |
removing the now-unused diagnostic. Updates a test case.
llvm-svn: 195581
|
| |
|
|
|
|
| |
as behaviorally in MSVC). This adds a generic diagnostic that we use for uuid, and can use for some other attributes as well, and adds a testcase.
llvm-svn: 195580
|
| |
|
|
|
|
| |
the semantic checking consistent with what the attribute specifies in Attr.td. Also adds a test case.
llvm-svn: 195579
|
| |
|
|
|
|
|
|
| |
diagnostic.
Reviewed by Fariborz Jahanian
llvm-svn: 195578
|
| |
|
|
|
|
|
|
|
|
| |
MSVC applies these to the following declaration only if present, otherwise
silently ignores them whereas we'll issue a warning.
Handling differs from ordinary attributes appearing in the same place, so add a
Sema test to make sure we get it right.
llvm-svn: 195577
|
| |
|
|
| |
llvm-svn: 195572
|
| |
|
|
|
|
| |
unit-test for it.
llvm-svn: 195564
|
| |
|
|
| |
llvm-svn: 195563
|
| |
|
|
| |
llvm-svn: 195561
|
| |
|
|
|
|
| |
This refines some diagnostics and reduces some boilerplate checking logic.
llvm-svn: 195560
|
| |
|
|
|
|
| |
into a helper.
llvm-svn: 195559
|
| |
|
|
|
|
|
|
|
|
|
| |
Full discourse at:
http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20131104/092514.html
http://lists.cs.uiuc.edu/pipermail/llvmdev/2013-November/068124.html
Patch by Dimitry Andric and Alexey Dokuchaev!
llvm-svn: 195558
|
| |
|
|
|
|
|
|
| |
emit an error instead of asserting.
rdar://15522601 & http://llvm.org/PR18031
llvm-svn: 195556
|
| |
|
|
|
|
| |
This fixes llvm.org/PR17241.
llvm-svn: 195555
|
| |
|
|
|
|
|
|
|
| |
Clang knows how to use the gnu assembler directly from doing so on linux and
hurd. The existing support worked out of the box on cygwin and mingw and I was
able to bootstrap clang with it in both systems (with pending patches for the
new mingw abi, but that is independent of the assembler).
llvm-svn: 195554
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This fixes llvm.org/PR17979.
Before:
void f() { g(/*aaa=*/x, /*bbb=*/ !y); }
After:
void f() { g(/*aaa=*/x, /*bbb=*/!y); }
llvm-svn: 195553
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With Style.BreakBeforeBinaryOperators, clang-format breaks incorrectly.
This fixes llvm.org/PR17994.
Before:
return boost::fusion::at_c<0>(iiii).second == boost::fusion::at_c
<1>(iiii).second;
After:
return boost::fusion::at_c<0>(iiii).second ==
boost::fusion::at_c<1>(iiii).second;
llvm-svn: 195552
|
| |
|
|
| |
llvm-svn: 195551
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Also disallow breaking between "@" and "{" or "[".
Before:
- (NSAttributedString *)attributedStringForSegment:(NSUInteger)segment
index:(NSUInteger)index
attributes:(NSDictionary *)attributes
nonDigitAttributes:(NSDictionary *)
nonDigitAttributes;
[mailComposeViewController
setToRecipients:@
[ NSBundle.mainBundle.infoDictionary[@"ABBFeedbackEmail"] ]];
After:
- (NSAttributedString *)attributedStringForSegment:(NSUInteger)segment
index:(NSUInteger)index
attributes:(NSDictionary *)attributes
nonDigitAttributes:
(NSDictionary *)nonDigitAttributes;
[mailComposeViewController
setToRecipients:
@[ NSBundle.mainBundle.infoDictionary[@"ABBFeedbackEmail"] ]];
This fixes llvm.org/PR18030.
llvm-svn: 195550
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The following patch enables the non-fragile ABI for the ObjFW runtime.
However, I noticed that it is not possible anymore to disable it with
-fno-objc-nonfragile-abi like it was before. I think this functionality should
be restored, but I guess this is not in scope for 3.4 anymore.
Patch by Jonathan Schleifer!
llvm-svn: 195547
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a severe penalty for not using column layout for braced lists. If
there are solutions with column layout, these are generally preferable
over bin-packed solutions.
Before:
std::vector<MyValues> aaaaaaaaaaaaaaaaaaa{ aaaaaaa, aaaaaaaaaa, aaaaa,
aaaaaaaaaaaaaaa, aaa, aaaaaaaaaa, a,
aaaaaaaaaaaaaaaaaaaaa, aaaaaaaaaaaa,
aaaaaaaaaaaaaaaaaaa +
aaaaaaaaaaaaaaaaaaa,
aaaaaaa, a };
After:
std::vector<MyValues> aaaaaaaaaaaaaaaaaaa{
aaaaaaa, aaaaaaaaaa,
aaaaa, aaaaaaaaaaaaaaa,
aaa, aaaaaaaaaa,
a, aaaaaaaaaaaaaaaaaaaaa,
aaaaaaaaaaaa, aaaaaaaaaaaaaaaaaaa + aaaaaaaaaaaaaaaaaaa,
aaaaaaa, a
};
llvm-svn: 195546
|
| |
|
|
| |
llvm-svn: 195545
|
| |
|
|
|
|
|
|
|
| |
module. Use the marker to diagnose cases where we try to transition between
submodules when not at the top level (most likely because a closing brace was
missing at the end of a header file, but is also possible if submodule headers
attempt to do something fundamentally non-modular, like our .def files).
llvm-svn: 195543
|
| |
|
|
|
|
|
|
| |
This will allow the completer to order results by relevance.
Differential Revision: http://llvm-reviews.chandlerc.com/D2209
llvm-svn: 195540
|
| |
|
|
|
|
|
|
|
|
|
| |
create().
The new names will be more appropriate when the objects are taught to return
type information for the code completer.
Differential Revision: http://llvm-reviews.chandlerc.com/D2208
llvm-svn: 195539
|
| |
|
|
|
|
|
|
| |
The looked-up matchers will be used during code completion.
Differential Revision: http://llvm-reviews.chandlerc.com/D2207
llvm-svn: 195534
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
renamed).
This is still an experimental attribute, but I wanted it in tree
for review. It may still get yanked.
This attribute can only be applied to a class @interface, not
a class extension or category. It does not change the type
system rules for Objective-C, but rather the implementation checking
for Objective-C classes that explicitly conform to a protocol.
During protocol conformance checking, clang recursively searches
up the class hierarchy for the set of methods that compose
a protocol. This attribute will cause the compiler to not consider
the methods contributed by a super class, its categories, and those
from its ancestor classes. Thus this attribute is used to force
subclasses to redeclare (and hopefully re-implement) methods if
they decide to explicitly conform to a protocol where some of those
methods may be provided by a super class.
This attribute intentionally leaves out properties, which are associated
with state. This attribute only considers methods (at least right now)
that are non-property accessors. These represent methods that "do something"
as dictated by the protocol. This may be further refined, and this
should be considered a WIP until documentation gets written or this
gets removed.
llvm-svn: 195533
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
argument.
This enables a micro-optimization in protocol conformance checking
to not examine the class hierarchy twice per method.
As part of this change, remove the default arguments from lookupInstanceMethod()
and lookupClassMethod(). It was becoming very redundant. For clients
needing the default arguments, have them use the full API instead of
these convenience methods.
llvm-svn: 195532
|