Eric Christopher
fde54ab8b5
Make this darwin only to simplify the padding calculations per arch.
...
llvm-svn: 136185
2011-07-26 23:39:23 +00:00
Eli Friedman
1b71a22b28
Re-fix r136172 so it isn't an error; apparently, some people are fond of their undefined behavior.
...
llvm-svn: 136183
2011-07-26 23:27:24 +00:00
Eric Christopher
8f95f425aa
This appears to be passing on all hosts.
...
llvm-svn: 136182
2011-07-26 23:26:00 +00:00
Jeffrey Yasskin
a6667816d5
This patch implements as much of the narrowing conversion error specified by
...
[dcl.init.list] as is possible without generalized initializer lists or full
constant expression support, and adds a c++0x-compat warning in C++98 mode.
The FixIt currently uses a typedef's basename without qualification, which is
likely to be incorrect on some code. If it's incorrect on too much code, we
should write a function to get the string that refers to a type from a
particular context.
The warning is currently off by default. I'll fix LLVM and clang before turning
it on.
llvm-svn: 136181
2011-07-26 23:20:30 +00:00
Douglas Gregor
8771796493
Disable the optimization that skips emission of complete, non-virtual
...
destructors of abstract classes. It's undefined behavior to actually
call the destructor (e.g., via delete), but the presence of code that
calls this destructor doesn't make the program
ill-formed. Fixes <rdar://problem/9819242>.
llvm-svn: 136180
2011-07-26 23:18:30 +00:00
Eric Christopher
ebc113d1d3
Try a little hack to fix the memset duplication on windows.
...
llvm-svn: 136179
2011-07-26 23:18:10 +00:00
Eric Christopher
9688a17bff
Try harder to fix these for windows.
...
llvm-svn: 136177
2011-07-26 23:12:06 +00:00
Eric Christopher
28f8189866
Generalize for various build bots.
...
llvm-svn: 136173
2011-07-26 22:52:35 +00:00
Eli Friedman
1260f59f5e
Diagnose trying to delete a pointer to an abstract class with a non-virtual destructor. PR10504.
...
I'm not completely sure the standard allows us to reject this, but if it doesn't, it should. :)
llvm-svn: 136172
2011-07-26 22:50:18 +00:00
Eric Christopher
19520147fc
Rewrite match line to be friendlier to misc buildbots.
...
llvm-svn: 136169
2011-07-26 22:44:31 +00:00
Eric Christopher
cf2ea54160
Rewrite matching line to be friendlier to misc buildbots.
...
llvm-svn: 136168
2011-07-26 22:43:37 +00:00
Eric Christopher
f883941903
Attempt to rewrite the matching for this test to pacify the windows
...
build bots.
llvm-svn: 136166
2011-07-26 22:42:01 +00:00
Anna Zaks
6868b35f01
Remove unused diagnostic definition.
...
llvm-svn: 136165
2011-07-26 22:34:49 +00:00
Eric Christopher
970fa44d70
Rework the match here to silence release mode windows buildbots.
...
llvm-svn: 136164
2011-07-26 22:32:44 +00:00
Eric Christopher
738c7ef5bb
Attempt to generalize this test for release mode buildbots.
...
llvm-svn: 136163
2011-07-26 22:31:33 +00:00
Eric Christopher
4a8bc43083
Try to generalize the match to quiet the windows build bot.
...
llvm-svn: 136162
2011-07-26 22:27:01 +00:00
Eli Friedman
ae4280f721
A couple minor issues with Sema for delete:
...
1. Attempting to delete an expression of incomplete class type should be an error, not a warning.
2. If someone tries to delete a pointer to an incomplete class type, make sure we actually emit
the delete expression after we warn.
llvm-svn: 136161
2011-07-26 22:25:31 +00:00
Eric Christopher
aee57b4948
Use unsigned long long for uint64_t. Fixes part of the windows buildbot.
...
llvm-svn: 136160
2011-07-26 22:19:01 +00:00
Eric Christopher
85e5156598
Migrate most of the rest of test/FrontendC from llvm and migrate
...
most of them to FileCheck.
llvm-svn: 136159
2011-07-26 22:17:02 +00:00
Eric Christopher
2dfed48cae
Adjust check for release mode.
...
llvm-svn: 136158
2011-07-26 22:07:13 +00:00
Argyrios Kyrtzidis
e3be9795c8
In ARC we emit an error when compiling:
...
@interface Foo : NSObject
@property (readonly) id myProp;
@end
@implementation Foo
@synthesize myProp;
@end
t.m:9:13: error: ARC forbids synthesizing a property of an Objective-C object with unspecified storage attribute
@synthesize myProp;
^
which is fine, we want the ownership of the synthesized ivar to be explicit. But we should _not_ emit an error
for the following cases, because we can get the ownership either from the declared ivar or from the property type:
@interface Foo : NSObject {
__weak id _myProp1;
id myProp2;
}
@property (readonly) id myProp1;
@property (readonly) id myProp2;
@property (readonly) __strong id myProp3;
@end
@implementation Foo
@synthesize myProp1 = _myProp1;
@synthesize myProp2;
@synthesize myProp3;
@end

rdar://9844006.
llvm-svn: 136155
2011-07-26 21:48:26 +00:00
Eric Christopher
e70ea8b806
Migrate:
...
CodeGen/2003-08-21-WideString.c
CodeGen/2003-10-02-UnionLValueError.c
CodeGen/2004-02-20-Builtins.c
CodeGen/2008-01-04-WideBitfield.c
CodeGen/2002-07-14-MiscTests3.c
CodeGen/2005-04-09-ComplexOps.c
CodeGen/2008-12-23-AsmIntPointerTie.c
CodeGen/2005-07-20-SqrtNoErrno.c
CodeGen/2005-01-02-VAArgError-ICE.c
CodeGen/2004-06-17-UnorderedCompares.c
CodeGen/2002-06-25-FWriteInterfaceFailure.c
CodeGen/2002-02-18-64bitConstant.c
CodeGen/2002-05-24-Alloca.c
CodeGen/2006-01-13-Includes.c
CodeGen/2007-09-27-ComplexIntCompare.c
CodeGen/2004-02-13-IllegalVararg.c
CodeGen/2007-09-12-PragmaPack.c
CodeGen/2002-08-02-UnionTest.c
from test/FrontendC with changes to remove header file includes.
llvm-svn: 136153
2011-07-26 21:42:32 +00:00
Ted Kremenek
182543aba2
Report more memory using in Preprocessor::getTotalMemory() and PreprocessingRecord::getTotalMemory().
...
Most of the memory was already reported; but now we report more memory from side data structures.
Fixes <rdar://problem/9379717>.
llvm-svn: 136150
2011-07-26 21:17:24 +00:00
Eric Christopher
def19fb79d
Migrate CodeGen/2007-03-05-DataLayout.c from test/FrontendC with changes
...
to remove header file includes.
llvm-svn: 136134
2011-07-26 20:44:55 +00:00
Eric Christopher
5a1d214c4a
Migrate CodeGen/2005-02-20-AggregateSAVEEXPR.c from test/FrontendC with
...
changes to remove any #include lines.
llvm-svn: 136129
2011-07-26 20:38:19 +00:00
Eric Christopher
1d9aab8c9e
Migrate CodeGen/2009-09-24-SqrtErrno.c from test/FrontendC with changes
...
to avoid header inclusions.
llvm-svn: 136128
2011-07-26 20:31:17 +00:00
Eric Christopher
63683b1e64
Migrate CodeGen/2002-03-11-LargeCharInString.c from test/FrontendC and
...
modify to avoid any outside includes.
llvm-svn: 136127
2011-07-26 20:29:08 +00:00
Eric Christopher
0a887eca46
Add CodeGen/2009-07-15-pad-wchar_t-array.c migrated from test/FrontendC
...
and modified to avoid includes.
llvm-svn: 136126
2011-07-26 20:27:12 +00:00
Eric Christopher
320db01d13
Migrate wchar-const.c with fixes and FileCheck from llvm/test/FrontendC.
...
llvm-svn: 136114
2011-07-26 18:39:16 +00:00
Kaelyn Uhrain
c45dcd2594
Revert r136046 while fixing handling of e.g. &foo[index_one_past_size]
...
llvm-svn: 136113
2011-07-26 18:36:36 +00:00
Jonathan D. Turner
b2b0823d00
This patch extends the previous patch by starting to incorporate more functionality, like lookup-by-name and exporting lookup tables, into the module manager. Methods now have documentation. A few more functions have been switched over to the new iterator style and away from manual/explicit iteration. Ultimately we want to move away from name lookup here, as symlinks make filenames not a safe unique value, but we use it here as a stopgap before better measures are in place (namely instead using FileEntry* from a global FileManager).
...
llvm-svn: 136107
2011-07-26 18:21:30 +00:00
Fariborz Jahanian
6507135e12
Provide fixit for static use of objective-c type
...
in few more places and in each instance, fix up
the type to the expected type. // rdar://9603056
llvm-svn: 136103
2011-07-26 17:58:54 +00:00
Benjamin Kramer
632500cb85
Eliminate a bunch of temporary strings.
...
llvm-svn: 136092
2011-07-26 16:59:25 +00:00
Douglas Gregor
ea777403f9
Add new libclang API, clang_codeCompleteGetObjCSelector(), which
...
provides the partial Objective-C selector used in a code
completion. From Connor Wakamo!
llvm-svn: 136084
2011-07-26 15:24:30 +00:00
Douglas Gregor
72912fb9a4
When we decide not to rebuild an instantiated C++ 'new' expression
...
that allocates an array of objects with a non-trivial destructor, be
sure to mark the destructor is "used". Fixes PR10480 /
<rdar://problem/9834317>.
llvm-svn: 136081
2011-07-26 15:11:03 +00:00
Douglas Gregor
a4f2b430e0
Objective-C++ ARC: When performing template argument deduction for a
...
lifetime-qualified template parameter, ensure that the deduced
template argument is a lifetime type. Fixes <rdar://problem/9828157>.
llvm-svn: 136078
2011-07-26 14:53:44 +00:00
Chad Rosier
99ee7829ff
After further discussion it has been determined that alignof should report
...
the preferred alignment. Thus, revert r135934, r135935, and r135940.
llvm-svn: 136062
2011-07-26 07:03:04 +00:00
Chandler Carruth
c22845abe2
Cleanup the stray comments and variables I could dig out of Sema to
...
refer to 'expansion' instead of 'instantiation'.
llvm-svn: 136060
2011-07-26 05:40:03 +00:00
Chandler Carruth
0b5cf7c863
Fix a stray instantiation comment in Parse.
...
llvm-svn: 136059
2011-07-26 05:19:46 +00:00
Chandler Carruth
64ee782e2f
Clean up as many of the comments in Basic I can find to talk in terms of
...
'expansion' rather than 'instantiation' for macro source locations.
llvm-svn: 136058
2011-07-26 05:17:23 +00:00
Chandler Carruth
ee4c1d1298
Migrate 'Instantiation' data and API bits of SLocEntry to 'Expansion'
...
etc. With this I think essentially all of the SourceManager APIs are
converted. Comments and random other bits of cleanup should be all thats
left.
llvm-svn: 136057
2011-07-26 04:56:51 +00:00
Chandler Carruth
73ee5d7fae
Convert InstantiationInfo and much of the related code to ExpansionInfo
...
and various other 'expansion' based terms. I've tried to reformat where
appropriate and catch as many references in comments but I'm going to do
several more passes. Also I've tried to expand parameter names to be
more clear where appropriate.
llvm-svn: 136056
2011-07-26 04:41:47 +00:00
Chandler Carruth
115b077f30
Rename create(MacroArg)InstantiationLoc to create(MacroArg)ExpansionLoc.
...
llvm-svn: 136054
2011-07-26 03:03:05 +00:00
Chandler Carruth
aa63153ff7
Rename SourceManager (and InstantiationInfo) isMacroArgInstantiation API
...
to isMacroArgExpansion.
llvm-svn: 136053
2011-07-26 03:03:00 +00:00
Kaelyn Uhrain
980bdb9dfb
Expand array bounds checking to work in the presence of unary & and *,
...
and to work with pointer arithmetic in addition to array indexing.
The new pointer arithmetic porition of the array bounds checking can be
turned on by -Warray-bounds-pointer-arithmetic (and is off by default).
llvm-svn: 136046
2011-07-26 01:52:28 +00:00
Evan Cheng
5a7a4ea505
Assembler really doesn't need to create TargetMachine anymore.
...
llvm-svn: 136045
2011-07-26 01:49:26 +00:00
Kaelyn Uhrain
15a67b97df
Test commit
...
llvm-svn: 136044
2011-07-26 01:42:22 +00:00
NAKAMURA Takumi
a2fd936107
test/CodeGen/2003-08-18-SigSetJmp.c: XFAIL: mingw, too!
...
llvm-svn: 136043
2011-07-26 01:40:37 +00:00
Eric Christopher
1c7ea99456
win32 doesn't have sigsetjmp, just xfail this test there.
...
llvm-svn: 136041
2011-07-26 01:32:19 +00:00
Eric Christopher
2da8b9c652
Rework this slightly to work for optimized compilers and remove the
...
optimization from the test.
llvm-svn: 136039
2011-07-26 01:24:10 +00:00