Commit Graph

4 Commits

Author SHA1 Message Date
George Burgess IV bf13b30ff2 [CodeGen] Fix a segfault caused by pass_object_size.
This patch fixes a bug where we'd segfault (in some cases) if we saw a
variadic function with one or more pass_object_size arguments.

Differential Revision: http://reviews.llvm.org/D17462


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272971 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-16 23:06:04 +00:00
Richard Smith c3e511efa3 Add a test to ensure that pass_object_size is handled properly by a delegate constructor.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@272605 91177308-0d34-0410-b5e6-96231b3b80d8
2016-06-14 00:48:35 +00:00
George Burgess IV b22d422bb7 [Sema] Teach overload resolution about unaddressable functions.
Given an expression like `(&Foo)();`, we perform overload resolution as
if we are calling `Foo` directly. This causes problems if `Foo` is a
function that can't have its address taken. This patch teaches overload
resolution to ignore functions that can't have their address taken in
such cases.

Differential Revision: http://reviews.llvm.org/D15590


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@257016 91177308-0d34-0410-b5e6-96231b3b80d8
2016-01-07 02:26:57 +00:00
George Burgess IV 13ef8dfe58 Add tests for pass_object_size.
These additions were meant to go in as a part of r254554; while it's
certainly nice to have new functionality, it's nicer if we have tests to
go with it. :)



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@254632 91177308-0d34-0410-b5e6-96231b3b80d8
2015-12-03 19:19:09 +00:00