<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emscripten-fastcomp-clang/test/CodeGenObjCXX, branch master</title>
<subtitle>emscripten clang</subtitle>
<id>https://git.amat.us/emscripten-fastcomp-clang/atom/test/CodeGenObjCXX?h=master</id>
<link rel='self' href='https://git.amat.us/emscripten-fastcomp-clang/atom/test/CodeGenObjCXX?h=master'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/'/>
<updated>2013-05-03T07:33:41Z</updated>
<entry>
<title>Correctly emit certain implicit references to 'self' even within</title>
<updated>2013-05-03T07:33:41Z</updated>
<author>
<name>John McCall</name>
<email>rjmccall@apple.com</email>
</author>
<published>2013-05-03T07:33:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=f5ebf9bf1df10ac15ba32a4b24dfe171b7848c58'/>
<id>urn:sha1:f5ebf9bf1df10ac15ba32a4b24dfe171b7848c58</id>
<content type='text'>
a lambda.

Bug #1 is that CGF's CurFuncDecl was "stuck" at lambda invocation
functions.  Fix that by generally improving getNonClosureContext
to look through lambdas and captured statements but only report
code contexts, which is generally what's wanted.  Audit uses of
CurFuncDecl and getNonClosureAncestor for correctness.

Bug #2 is that lambdas weren't specially mapping 'self' when inside
an ObjC method.  Fix that by removing the requirement for that
and using the normal EmitDeclRefLValue path in LoadObjCSelf.

rdar://13800041

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@181000 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Drop ObjCIndirectCopyRestoreExprs during template instantiation.</title>
<updated>2013-04-11T02:14:26Z</updated>
<author>
<name>John McCall</name>
<email>rjmccall@apple.com</email>
</author>
<published>2013-04-11T02:14:26Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=93b64571e92c10bb168c2a2786c1380f334ba960'/>
<id>urn:sha1:93b64571e92c10bb168c2a2786c1380f334ba960</id>
<content type='text'>
It's a kind of implicit conversion, which we generally drop, but
more importantly it's got very specific placement requirements.

rdar://13617051

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179254 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Don't crash when mangling types defined in ObjC class extensions.</title>
<updated>2013-04-10T06:08:21Z</updated>
<author>
<name>John McCall</name>
<email>rjmccall@apple.com</email>
</author>
<published>2013-04-10T06:08:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=0baaabb7174c8e512ea52bc36687dc31ff68b09f'/>
<id>urn:sha1:0baaabb7174c8e512ea52bc36687dc31ff68b09f</id>
<content type='text'>
The original test case here was mangling a type name for TBAA,
but we can provoke this in C++11 easily enough.

rdar://13434937

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@179153 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>In ObjC++ on legacy runtimes, push an EH cleanup as well as</title>
<updated>2013-04-03T00:56:07Z</updated>
<author>
<name>John McCall</name>
<email>rjmccall@apple.com</email>
</author>
<published>2013-04-03T00:56:07Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=73c56bb0c8e722f4f0c0a044f13064d381f1ec8d'/>
<id>urn:sha1:73c56bb0c8e722f4f0c0a044f13064d381f1ec8d</id>
<content type='text'>
a normal cleanup when entering a @try or @synchronized to
ensure that we clean that up if an exception is triggered.

Apparently GCC did this, so it's hard to argue that we shouldn't
do at least as much.

rdar://12364847

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178599 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Under ARC, when we're passing the address of a strong variable</title>
<updated>2013-03-23T02:35:54Z</updated>
<author>
<name>John McCall</name>
<email>rjmccall@apple.com</email>
</author>
<published>2013-03-23T02:35:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=b6a6079449a5275c283982e19b0c38e165833bb2'/>
<id>urn:sha1:b6a6079449a5275c283982e19b0c38e165833bb2</id>
<content type='text'>
to an out-parameter using the indirect-writeback conversion,
and we copied the current value of the variable to the temporary,
make sure that we register an intrinsic use of that value with
the optimizer so that the value won't get released until we have
a chance to retain it.

rdar://13195034

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@177813 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Sema: Preserve attributes on parameters in instantiated function templates.</title>
<updated>2013-03-08T22:25:36Z</updated>
<author>
<name>Jordan Rose</name>
<email>jordan_rose@apple.com</email>
</author>
<published>2013-03-08T22:25:36Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=0918989f0eed08870e50418df97d1486d977d773'/>
<id>urn:sha1:0918989f0eed08870e50418df97d1486d977d773</id>
<content type='text'>
This was causing correctness issues for ARC and the static analyzer when a
function template has "consumed" Objective-C object parameters (i.e.
parameters that will be released by the function before returning).

The fix is threefold:
(1) Actually copy over the attributes from old ParmVarDecls to new ones.
(2) Have Sema::BuildFunctionType only work for building FunctionProtoTypes,
    which it was doing anyway. This allows us to pass an ExtProtoInfo
    instead of a plain ExtInfo and several flags.
(3) Drop param attributes as part of StripImplicitInstantiation, which is
    used when an implicit instantiation is followed by an explicit one.

&lt;rdar://problem/12685622&gt;

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176728 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Correction to r176432: the bug actually fixed was &lt;rdar://13025708&gt;.</title>
<updated>2013-03-04T07:35:41Z</updated>
<author>
<name>John McCall</name>
<email>rjmccall@apple.com</email>
</author>
<published>2013-03-04T07:35:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=2f8845fa59587456d53aa6056ee79984812fdf14'/>
<id>urn:sha1:2f8845fa59587456d53aa6056ee79984812fdf14</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176433 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Centralize and refine the __unknown_anytype argument rules</title>
<updated>2013-03-04T07:34:02Z</updated>
<author>
<name>John McCall</name>
<email>rjmccall@apple.com</email>
</author>
<published>2013-03-04T07:34:02Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=48f904271effd381ec3c1ae33b97d1ec7d95860a'/>
<id>urn:sha1:48f904271effd381ec3c1ae33b97d1ec7d95860a</id>
<content type='text'>
and be sure to apply them whether or not the debugger gave
us a method declaration.

rdar://12565338

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176432 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Perform the receiver-expression transformations regardless of</title>
<updated>2013-03-01T09:20:14Z</updated>
<author>
<name>John McCall</name>
<email>rjmccall@apple.com</email>
</author>
<published>2013-03-01T09:20:14Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=2fbe92cc2464c77825209df9a262d9d13e5ba64c'/>
<id>urn:sha1:2fbe92cc2464c77825209df9a262d9d13e5ba64c</id>
<content type='text'>
whether we already have a method.  Fixes a bug where we were
failing to properly contextually convert a message receiver
during template instantiation.

As a side-effect, we now actually perform correct method lookup
after adjusting a message-send to integral or non-ObjC pointer
types (legal outside of ARC).

rdar://13305374

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176339 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
<entry>
<title>Reapply r176133 with testcase fixes.</title>
<updated>2013-02-27T00:06:04Z</updated>
<author>
<name>Bill Wendling</name>
<email>isanbard@gmail.com</email>
</author>
<published>2013-02-27T00:06:04Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/emscripten-fastcomp-clang/commit/?id=899245792776dd219a3c36eb19b42272e270bc0c'/>
<id>urn:sha1:899245792776dd219a3c36eb19b42272e270bc0c</id>
<content type='text'>
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@176145 91177308-0d34-0410-b5e6-96231b3b80d8
</content>
</entry>
</feed>
