| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 104105
|
| |
|
|
|
|
|
|
|
| |
the same .cpp file as provided the definitions referenced these functions,
hiding the issue. However, they are clearly no longer inline. Let me know if
there is a reason to move their definitions to the header and make them truly
inline.
llvm-svn: 104104
|
| |
|
|
|
|
| |
welcome for one.
llvm-svn: 104101
|
| |
|
|
|
|
|
| |
gc attributes to be inline with Objective-C
(for radar 7925141).
llvm-svn: 104084
|
| |
|
|
|
|
| |
expressions in attributes, pragmas.
llvm-svn: 104083
|
| |
|
|
|
|
|
|
|
|
| |
involves extending implicit conversion sequences to model vector
conversions and vector splats, along with teaching the C++ conditional
operator-checking code about vector types.
Fixes <rdar://problem/7983501>.
llvm-svn: 104081
|
| |
|
|
|
|
|
|
|
|
| |
of a current
design limitation in how we handle Objective-C class extensions. This was causing the CursorVisitor
to essentially visit an @property twice (once in the @interface, the other in the class extension).
Fixes <rdar://problem/7410145>.
llvm-svn: 104055
|
| |
|
|
| |
llvm-svn: 104026
|
| |
|
|
|
|
| |
that test case is a bit weird and I'd like to investigate further before closing that bug.
llvm-svn: 104025
|
| |
|
|
|
|
|
|
|
| |
non-function-local declarations with names similar to what the user
typed. For example, this allows us to correct 'supper' to 'super' in
an Objective-C message send, even though the C function 'isupper' has
the same edit distance.
llvm-svn: 104023
|
| |
|
|
|
|
|
|
|
| |
consider "super" as a candidate whenever we're parsing an expression
within an Objective-C method in an interface that has a superclass. At
some point, we'd like to give "super" a little edge over non-local
names; that will come later.
llvm-svn: 104022
|
| |
|
|
| |
llvm-svn: 104019
|
| |
|
|
|
|
|
| |
Also rename ABSTRACT to ABSTRACT_STMT, in keeping with the other .def
files
llvm-svn: 104017
|
| |
|
|
|
|
|
| |
for Visual Studio 2010. It also adds a registry search
for the Express edition,", from Steven Watanabe!
llvm-svn: 104015
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Revert much of the implementation of C++98/03 [temp.friend]p5 in
r103943 and its follow-ons r103948 and r103952. While our
implementation was technically correct, other compilers don't seem to
implement this paragraph (which forces the instantiation of friend
functions defined in a class template when a class template
specialization is instantiated), and doing so broke a bunch of Boost
libraries.
Since this behavior has changed in C++0x (which instantiates the
friend function definitions when they are used), we're going to skip
the nowhere-implemented C++98/03 semantics and go straight to the
C++0x semantics.
This commit is a band-aid to get Boost up and running again. It
doesn't really fix PR6952 (which this commit un-fixes), but it does
deal with the way Boost.Units abuses this particular paragraph.
llvm-svn: 104014
|
| |
|
|
| |
llvm-svn: 104013
|
| |
|
|
|
|
| |
this is a step in the right direction.
llvm-svn: 104012
|
| |
|
|
|
|
| |
CXXRecordDecl.
llvm-svn: 104011
|
| |
|
|
|
|
|
|
| |
If a switch condition is constant, warn if there's no case for it.
Constant switch conditions do come up in reasonable template code.
llvm-svn: 104010
|
| |
|
|
|
|
| |
number of times the analyzer will go through a loop.
llvm-svn: 104007
|
| |
|
|
| |
llvm-svn: 104001
|
| |
|
|
|
|
| |
a temporary with a noreturn destructor has been created. Fixes PR6884 for now.
llvm-svn: 104000
|
| |
|
|
|
|
|
| |
when we really need a proper audit of our handling of attributes in
templates.
llvm-svn: 103999
|
| |
|
|
| |
llvm-svn: 103986
|
| |
|
|
|
|
| |
out. The remaining ones are okay.
llvm-svn: 103973
|
| |
|
|
| |
llvm-svn: 103972
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
make it miss (invalid) things like:
<<<<<<<
>>>>>>>
and crash if
<<<<<<<
was at the end of the line. When we find a >>>>>>> that is not at the
end of the line, make sure to reset Pos so we don't crash on something
like:
<<<<<<< >>>>>>>
This isn't worth making testcases for, since each would require a new file.
rdar://7987078 - signal 11 compiling "<<<<<<<<<<"
llvm-svn: 103968
|
| |
|
|
|
|
| |
Fixes rdar://problem/7992749
llvm-svn: 103965
|
| |
|
|
|
|
|
| |
typedefs. As a drive-by, teach hit how to build VLA types, since those
will eventually be supported in C++.
llvm-svn: 103958
|
| |
|
|
|
|
| |
Fixes PR7153
llvm-svn: 103954
|
| |
|
|
|
|
|
| |
to mark its destructors as referenced which may cause
a crash. Fixes radar 7896920
llvm-svn: 103953
|
| |
|
|
|
|
|
| |
functions defined inside a class template. Fixes PR6952, the last
Boost.Units failure.
llvm-svn: 103952
|
| |
|
|
|
|
|
| |
class template conflicts with an existing (non-template)
definition. This is another part of PR6952.
llvm-svn: 103948
|
| |
|
|
| |
llvm-svn: 103945
|
| |
|
|
|
|
|
|
| |
- Check bases as part of isEmptyRecord().
- C++ record fields are never empty in the Itanium ABI.
llvm-svn: 103944
|
| |
|
|
|
|
|
|
| |
within class templates be instantiated along with each class template
specialization, even if the functions are not used. Do so, as a baby
step toward PR6952.
llvm-svn: 103943
|
| |
|
|
|
|
|
| |
function does not return. Thanks to Eli for pointing out this corner
case.
llvm-svn: 103941
|
| |
|
|
|
|
|
|
| |
link failures when C/ObjC code uses __attribute__((cleanup())) (previously this was inserting references to two libstc++ symbols; the personality function and the __terminate() function).
This is still probably wrong for Objective-C++ and adds a couple of lines in CGException that should probably be in the CGObjCRuntime subclass. The personality function is now only looked up in one place in CGException though, so this should be easier to fix in the future.
llvm-svn: 103938
|
| |
|
|
|
|
|
| |
definitions.
llvm-svn: 103932
|
| |
|
|
|
|
|
|
| |
a missing */ since we truncated the file.
This fixes rdar://7948776
llvm-svn: 103913
|
| |
|
|
|
|
| |
This aligns with how gcc compiler does things.
llvm-svn: 103912
|
| |
|
|
|
|
| |
type is a typedef to an array type.
llvm-svn: 103909
|
| |
|
|
|
|
|
| |
of an array type, use the outermost array bound as the number of
elements to allocate. Fixes PR7147.
llvm-svn: 103908
|
| |
|
|
|
|
| |
compute a CFG for a function.
llvm-svn: 103905
|
| |
|
|
|
|
|
|
| |
initializer, don't fold paramters. Their initializers are just default
arguments which can be overridden. This fixes some spectacular regressions due
to more things making it into the constant folding.
llvm-svn: 103904
|
| |
|
|
|
|
| |
passed to va_start, it doesn't actually pass it.
llvm-svn: 103899
|
| |
|
|
|
|
| |
entirely sure what this does, to be honest.
llvm-svn: 103895
|
| |
|
|
|
|
|
| |
can probably do this for us, but it's actually somewhat nicer to write it
out here.
llvm-svn: 103893
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
__cxa_guard_abort along the exceptional edge into (in effect) a nested
"try" that rethrows after aborting. Fixes PR7144 and the remaining
Boost.ProgramOptions failures, along with the regressions that r103880
caused.
The crucial difference between this and r103880 is that we now follow
LLVM's little dance with the llvm.eh.exception and llvm.eh.selector
calls, then use _Unwind_Resume_or_Rethrow to rethrow.
llvm-svn: 103892
|
| |
|
|
|
|
| |
because it's causing strange linker errors. Unfixes PR7144.
llvm-svn: 103890
|