| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
|
|
|
|
| |
Preprocessor.cpp
into clang-cc.cpp. This makes it so clang-cc constructs the *entire* predefines
buffer, not just half of it. A bonus of this is that we get to kill a copy
of DefineBuiltinMacro.
llvm-svn: 68830
|
| |
|
|
| |
llvm-svn: 68825
|
| |
|
|
|
|
|
|
|
|
|
|
| |
improvement, source locations read from the PCH file will properly
resolve to the source files that were used to build the PCH file
itself.
Once we have the preprocessor state stored in the PCH file, source
locations that refer to macro instantiations that occur in the PCH
file should have the appropriate instantiation information.
llvm-svn: 68758
|
| |
|
|
| |
llvm-svn: 68640
|
| |
|
|
|
|
| |
predefines buffer.
llvm-svn: 68627
|
| |
|
|
|
|
| |
-include, but that will be fixed soon.
llvm-svn: 68625
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Add -static-define option driver can use when __STATIC__ should be
defined (instead of __DYNAMIC__).
- Don't set __OPTIMIZE_SIZE__ on Os, __OPTIMIZE_SIZE__ is tied to Oz.
- Set __NO_INLINE__ following GCC 4.2.
- Set __GNU_GNU_INLINE__ or __GNU_STDC_INLINE__ following GCC 4.2.
- Set __EXCEPTIONS for Objective-C NonFragile ABI.
- Set __STRICT_ANSI__ for standard conforming modes.
- I added a clang style test case in utils for this, but its not
particularly portable and I don't think it belongs in the test
suite.
llvm-svn: 68621
|
| |
|
|
|
|
|
|
|
|
|
| |
- Add -pic-level clang-cc option to specify the value for the define,
updated driver to pass this.
- Added __pic__
- Added OBJC_ZEROCOST_EXCEPTIONS define while I was here (to match gcc).
llvm-svn: 68584
|
| |
|
|
|
|
|
|
|
|
|
| |
and are even set in C mode. As such, move them to Targets.cpp.
__OBJC_GC__ is also darwin specific, but seems reasonable to always
define it when in objc-gc mode.
This fixes rdar://6761450
llvm-svn: 68494
|
| |
|
|
|
|
| |
passed to the compiler.
llvm-svn: 68450
|
| |
|
|
|
|
| |
was causing the char after the newline to get eaten.
llvm-svn: 68430
|
| |
|
|
|
|
|
| |
Eventually, would be nice to be able to run these modifications even
when we don't want the warning or errors for the actual diagnostic.
llvm-svn: 68272
|
| |
|
|
| |
llvm-svn: 68198
|
| |
|
|
| |
llvm-svn: 68181
|
| |
|
|
| |
llvm-svn: 68107
|
| |
|
|
|
|
|
|
| |
basic tests. Chris Goller has graciously offered to write some test to help validate UCN support.
From a front-end perspective, I believe this code should work for ObjC @-strings. At the moment, I believe we need to tweak the code generation for @-strings (which doesn't appear to handle them). Will be investigating.
llvm-svn: 68076
|
| |
|
|
| |
llvm-svn: 67854
|
| |
|
|
| |
llvm-svn: 67802
|
| |
|
|
|
|
|
|
| |
- Temporarily undef'ed __OBJC2__ in nonfragile objc abi mode
as it was forcing ivar synthesis in a certain project which clang
does not yet support.
llvm-svn: 67766
|
| |
|
|
|
|
| |
... arguments.
llvm-svn: 67706
|
| |
|
|
|
|
|
|
|
|
|
|
| |
terminated with an EOF token. The condition it is trying to check for is
handled by this code above.
// Empty arguments are standard in C99 and supported as an extension in
// other modes.
if (ArgTokens.empty() && !Features.C99)
Diag(Tok, diag::ext_empty_fnmacro_arg);
llvm-svn: 67705
|
| |
|
|
|
|
| |
include the clang version # too.
llvm-svn: 67619
|
| |
|
|
|
|
|
| |
This matters in assembler mode, where this is silently allowed.
This fixes rdar://6709206.
llvm-svn: 67539
|
| |
|
|
|
|
|
|
|
|
|
| |
- Make the Diagnostic::Level for PTH errors to be specified by the caller
clang (driver):
- Set the PTHManager diagnostic level to "Diagnostic::Error" for -include-pth
(a hard error) and Diagnostic::Warning for -token-cache (we can still
proceed).
llvm-svn: 67462
|
| |
|
|
|
|
| |
it a hard error.
llvm-svn: 67424
|
| |
|
|
| |
llvm-svn: 67423
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a #include directive around the command line buffer so that
diagnostics generated from -include directives get diagnostics
like:
In file included from <built-in>:98:
In file included from <command line>:3:
./t.h:2:1: warning: type specifier missing, defaults to 'int'
b;
^
llvm-svn: 67396
|
| |
|
|
|
|
| |
cached tokens. This is for use with -include-pth.
llvm-svn: 67385
|
| |
|
|
|
|
| |
can have language-specific defines.
llvm-svn: 67375
|
| |
|
|
|
|
| |
original source file (if any) that was used to generate the PTH cache.
llvm-svn: 67343
|
| |
|
|
|
|
|
|
| |
''
'
'
llvm-svn: 67237
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
and the token after the # should be expanded if it is not a valid directive.
This allows us to transform things like:
#define FOO BAR
# FOO
into # BAR, even though FOO is not normally expanded for directives.
This should fix PR3833
llvm-svn: 67236
|
| |
|
|
| |
llvm-svn: 67235
|
| |
|
|
|
|
| |
# 4
llvm-svn: 67233
|
| |
|
|
|
|
|
|
|
| |
#define Y X ## .
Y
are ok in .S files.
llvm-svn: 67231
|
| |
|
|
|
|
|
|
| |
require a space (to avoid concatenation) if the numeric constant had a
leading period.
- PR3819.
llvm-svn: 67163
|
| |
|
|
| |
llvm-svn: 67081
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
diagnostics. This builds on the patch that Sebastian committed and
then revert. Major differences are:
- We don't remove or use the current ".def" files. Instead, for now,
we just make sure that we're building the ".inc" files.
- Fixed CMake makefiles to run TableGen and build the ".inc" files
when needed. Tested with both the Xcode and Makefile generators
provided by CMake, so it should be solid.
- Fixed normal makefiles to handle out-of-source builds that involve
the ".inc" files.
I'll send a separate patch to the list with Sebastian's changes that
eliminate the use of the .def files.
llvm-svn: 67058
|
| |
|
|
| |
llvm-svn: 67032
|
| |
|
|
| |
llvm-svn: 66955
|
| |
|
|
| |
llvm-svn: 66954
|
| |
|
|
| |
llvm-svn: 66799
|
| |
|
|
| |
llvm-svn: 66474
|
| |
|
|
|
|
|
| |
Redefinition checking should ignore the leading whitespace and
start of line flags on the first token of an expansion.
llvm-svn: 66442
|
| |
|
|
|
|
|
|
| |
This prevents caret diagnostics from the scratch buffer from
including other tokens in the scratch buffer that occurred beforei
them.
llvm-svn: 66375
|
| |
|
|
|
|
|
| |
\0's to created tokens instead of making all clients do it. No functionality
change.
llvm-svn: 66373
|
| |
|
|
| |
llvm-svn: 66344
|
| |
|
|
| |
llvm-svn: 66246
|
| |
|
|
|
|
|
| |
preexpanded macro arguments from the preprocessor's bump pointer.
This reduces # mallocs from 12444 to 11792.
llvm-svn: 66025
|
| |
|
|
| |
llvm-svn: 65884
|