| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
are explicitly given.
llvm-svn: 108297
|
|
|
|
|
|
|
| |
spell-checking. By default, spell-checking is enabled for Clang
(obviously) but disabled in CIndex for performance reasons.
llvm-svn: 107992
|
|
|
|
|
|
| |
from PR7583
llvm-svn: 107788
|
|
|
|
| |
llvm-svn: 107367
|
|
|
|
| |
llvm-svn: 107021
|
|
|
|
| |
llvm-svn: 106984
|
|
|
|
|
|
|
|
|
|
|
|
| |
As part of this, pull together trapv handling into the same enum.
This also add support for NSW multiplies.
This also makes PCH disagreement on overflow behavior silent, since it
really doesn't matter except for warnings and codegen (no macros get
defined etc).
llvm-svn: 106956
|
|
|
|
|
|
| |
Clang static analyzer!
llvm-svn: 106568
|
|
|
|
|
|
| |
Elhage!
llvm-svn: 106507
|
|
|
|
|
|
| |
(the last argument of the triple).
llvm-svn: 106131
|
|
|
|
| |
llvm-svn: 106003
|
|
|
|
|
|
| |
Also, fix a memory leak.
llvm-svn: 105963
|
|
|
|
|
|
| |
over Arg*s.
llvm-svn: 105838
|
|
|
|
|
|
|
| |
candidates printed. We default to 'all'. At the moment, 'best' prints only
the first 4 overloads, but we'll improve that over time.
llvm-svn: 105815
|
|
|
|
| |
llvm-svn: 105597
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- We actually pretend that we have two separate types for LLVM assembly/bitcode because we need to use the standard suffixes with LTO ('clang -O4 -c t.c' should generate 't.o').
It is now possible to do something like:
$ clang -emit-llvm -S t.c -o t.ll ... assorted other compile flags ...
$ clang -c t.ll -o t.o ... assorted other compile flags ...
and expect that the output will be almost* identical to:
$ clang -c t.c -o t.o ... assorted other compile flags ...
because all the target settings (default CPU, target features, etc.) will all be initialized properly by the driver/frontend.
*: This isn't perfect yet, because in practice we will end up running the optimization passes twice. It's possible to get something equivalent out with a well placed -mllvm -disable-llvm-optzns, but I'm still thinking about the cleanest way to solve this problem more generally.
llvm-svn: 105584
|
|
|
|
|
|
| |
arguments after translation, instead of the -cc1 level arguments.
llvm-svn: 105476
|
|
|
|
|
|
|
| |
added as the last output step, instead of just hacking it into the link step.
- Among other things, this fixes dSYM generation when using multiple -arch options.
llvm-svn: 105475
|
|
|
|
| |
llvm-svn: 105474
|
|
|
|
| |
llvm-svn: 104955
|
|
|
|
| |
llvm-svn: 104823
|
|
|
|
| |
llvm-svn: 104815
|
|
|
|
|
|
|
|
| |
'-fasm' and explicitly map from that flag to -fgnu-keywords in the driver. Turn
off the driver in the lexer test for this madness and add a test to the driver
that the translation actually works.
llvm-svn: 104428
|
|
|
|
| |
llvm-svn: 104280
|
|
|
|
|
|
| |
<rdar://problem/8007063>.
llvm-svn: 104205
|
|
|
|
|
|
| |
assembler defaults to on.
llvm-svn: 103825
|
|
|
|
|
|
| |
support the necessary ABI yet.
llvm-svn: 103632
|
|
|
|
| |
llvm-svn: 103631
|
|
|
|
| |
llvm-svn: 103197
|
|
|
|
|
|
|
| |
building and passing arguments to cc1 layer when setting values to their
defaults.
llvm-svn: 103162
|
|
|
|
|
|
|
|
|
|
|
|
| |
over choice of:
t.c:3:11: warning: conversion specifies type 'char *' but the argument has type 'int' [-Wformat]
t.c:3:11: warning: conversion specifies type 'char *' but the argument has type 'int' [-Wformat,1]
t.c:3:11: warning: conversion specifies type 'char *' but the argument has type 'int' [-Wformat,Format String]
dox to come.
llvm-svn: 103056
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
printed in a diagnostic, similar to the limit we already have on the
depth of the template instantiation backtrace. The macro instantiation
backtrace is limited to 10 "instantiated from:" diagnostics; when it's
longer than that, we'll show the first half, then say how many were
suppressed, then show the second half. The limit can be changed with
-fmacro-instantiation-limit=N, and turned off with N=0.
This eliminates a lot of note spew with libraries making use of the
Boost.Preprocess library.
llvm-svn: 103014
|
|
|
|
|
|
|
|
| |
'--analyze'. There
are several known issues to address for it should be turned on by default.
llvm-svn: 102664
|
|
|
|
|
|
| |
- <rdar://problem/7919678>
llvm-svn: 102559
|
|
|
|
| |
llvm-svn: 102432
|
|
|
|
| |
llvm-svn: 102431
|
|
|
|
|
|
|
|
|
|
| |
- Replace -cc1 level -fobjc-legacy-dispatch with -fobjc-dispatch-method={legacy,non-legacy,mixed}.
- Lift "mixed" vs "non-mixed" policy choice up to driver level, instead of being buried in CGObjCMac.cpp.
- No intended functionality change.
llvm-svn: 102255
|
|
|
|
| |
llvm-svn: 102254
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
we will print with each error that occurs during template
instantiation. When the backtrace is longer than that, we will print
N/2 of the innermost backtrace entries and N/2 of the outermost
backtrace entries, then skip the middle entries with a note such as:
note: suppressed 2 template instantiation contexts; use
-ftemplate-backtrace-limit=N to change the number of template
instantiation entries shown
This should eliminate some excessively long backtraces that aren't
providing any value.
llvm-svn: 101882
|
|
|
|
|
|
|
|
| |
implemented precisely the same as GCC, but the distinction GCC makes isn't
useful to represent. This allows parsing code which uses GCC-specific keywords
('asm', etc.) without parsing in a fully GNU mode.
llvm-svn: 101667
|
|
|
|
| |
llvm-svn: 101618
|
|
|
|
| |
llvm-svn: 101357
|
|
|
|
|
|
|
|
| |
option parser.
- Note that this is a behavior change, previously -mllvm at the driver level forwarded to clang -cc1. The driver does a little magic to make sure that '-mllvm -disable-llvm-optzns' works correctly, but other users will need to be updated to use -Xclang.
llvm-svn: 101354
|
|
|
|
| |
llvm-svn: 100982
|
|
|
|
|
|
| |
support them.
llvm-svn: 100930
|
|
|
|
| |
llvm-svn: 100882
|
|
|
|
|
|
|
|
| |
Remove -faccess-control from -cc1; add -fno-access-control.
Make the driver pass -fno-access-control by default.
Update a bunch of tests to be correct under access control.
llvm-svn: 100880
|
|
|
|
| |
llvm-svn: 100770
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
emitting diagnostics after it has produced that many errors. Give this a
default value of 20 which produces plenty of errors for people to fix before
recompiling but not so many that their entire console scrolls away when the
compiler gets confused. The experience looks like this:
$ clang foo.c
<tons of crap>
foo.c:102:3: error: unknown type name 'somethingbad'
somethingbad x;
^
fatal error: too many errors emitted, stopping now
36 warnings and 20 errors generated.
llvm-svn: 100689
|
|
|
|
|
|
| |
PR6661, patch by Ori Avtalion!
llvm-svn: 99821
|