<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bcm5719-llvm/clang/test/SemaObjC/nonnull.m, branch meklort-10.0.0</title>
<subtitle>Project Ortega BCM5719 LLVM</subtitle>
<id>https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.0</id>
<link rel='self' href='https://git.raptorcs.com/git/bcm5719-llvm/atom?h=meklort-10.0.0'/>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/'/>
<updated>2019-03-14T18:38:02+00:00</updated>
<entry>
<title>[Sema] Fix a use-after-free of a _Nonnull ParsedAttr</title>
<updated>2019-03-14T18:38:02+00:00</updated>
<author>
<name>Erik Pilkington</name>
<email>erik.pilkington@gmail.com</email>
</author>
<published>2019-03-14T18:38:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=3689caebecfac1f6868e6190c45e8a4f4f433336'/>
<id>urn:sha1:3689caebecfac1f6868e6190c45e8a4f4f433336</id>
<content type='text'>
We were allocating the implicit attribute in the declarator's attribute pool,
but putting into the declaration specifier's ParsedAttributesView. If there are
multiple declarators, then we'll use the attribute from the declaration
specifier after clearing out the declarators attribute pool. Fix this by
allocating the attribute in the declaration specifier's pool.

rdar://48529718

Differential revision: https://reviews.llvm.org/D59327

llvm-svn: 356187
</content>
</entry>
<entry>
<title>[Sema] Don't crash when __attribute__((nonnull)) is applied to blocks</title>
<updated>2015-04-07T06:01:53+00:00</updated>
<author>
<name>David Majnemer</name>
<email>david.majnemer@gmail.com</email>
</author>
<published>2015-04-07T06:01:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=06864814e502e631b2c07463f6e5be7e60a2260d'/>
<id>urn:sha1:06864814e502e631b2c07463f6e5be7e60a2260d</id>
<content type='text'>
A simple case of asserting isFunctionOrMethod when we should have
asserted isFunctionOrMethodOrBlock.

This fixes PR23117.

llvm-svn: 234297
</content>
</entry>
<entry>
<title>Fix representation of __attribute__((nonnull)) to support correctly modeling</title>
<updated>2014-08-27T04:59:42+00:00</updated>
<author>
<name>Richard Smith</name>
<email>richard-llvm@metafoo.co.uk</email>
</author>
<published>2014-08-27T04:59:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=588bd9b7f869578e80c4359694425a5fd20e3ebd'/>
<id>urn:sha1:588bd9b7f869578e80c4359694425a5fd20e3ebd</id>
<content type='text'>
the no-arguments case. Don't expand this to an __attribute__((nonnull(A, B,
C))) attribute, since that does the wrong thing for function templates and
varargs functions.

In passing, fix a grammar error in the diagnostic, a crash if
__attribute__((nonnull(N))) is applied to a varargs function,
a bug where the same null argument could be diagnosed multiple
times if there were multiple nonnull attributes referring to it,
and a bug where nonnull attributes would not be accumulated correctly
across redeclarations.

llvm-svn: 216520
</content>
</entry>
<entry>
<title>'nonnull(1)' on a block parameter should apply to the block's argument.</title>
<updated>2014-02-11T17:27:59+00:00</updated>
<author>
<name>Jordan Rose</name>
<email>jordan_rose@apple.com</email>
</author>
<published>2014-02-11T17:27:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=c939907a5af701aae3ebae452251520b88060694'/>
<id>urn:sha1:c939907a5af701aae3ebae452251520b88060694</id>
<content type='text'>
Thanks to r199467, __attribute__((nonnull)) (without arguments) can apply
directly to parameters, instead of being applied to the whole function.
However, the old form of nonnull (with an argument index) could also apply
to the arguments of function and block pointers, and both of these can be
passed as parameters.

Now, if 'nonnull' with an argument is found on a parameter, /and/ the
parameter is a function or block pointer, it is handled the old way.

PR18795

llvm-svn: 201162
</content>
</entry>
<entry>
<title>Add basic checking for returning null from functions/methods marked 'returns_nonnull'.</title>
<updated>2014-01-22T06:10:28+00:00</updated>
<author>
<name>Ted Kremenek</name>
<email>kremenek@apple.com</email>
</author>
<published>2014-01-22T06:10:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=ef9e7f80598cdc504644ef708ebc8abb3b0d7509'/>
<id>urn:sha1:ef9e7f80598cdc504644ef708ebc8abb3b0d7509</id>
<content type='text'>
This involved making CheckReturnStackAddr into a static function, which
is now called by a top-level return value checking routine called
CheckReturnValExpr.

llvm-svn: 199790
</content>
</entry>
<entry>
<title>Wire up basic parser/sema support for attribute 'returns_nonnull'.</title>
<updated>2014-01-20T05:50:47+00:00</updated>
<author>
<name>Ted Kremenek</name>
<email>kremenek@apple.com</email>
</author>
<published>2014-01-20T05:50:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=dbf62e3eee51c0532da044a903ee48fe02b6f63e'/>
<id>urn:sha1:dbf62e3eee51c0532da044a903ee48fe02b6f63e</id>
<content type='text'>
This attribute is supported by GCC.  More generally it should
probably be a type attribute, but this behavior matches 'nonnull'.

This patch does not include warning logic for checking if a null
value is returned from a function annotated with this attribute.
That will come in subsequent patches.

llvm-svn: 199626
</content>
</entry>
<entry>
<title>Enhance attribute 'nonnull' to be applicable to parameters directly (infix).</title>
<updated>2014-01-17T06:24:56+00:00</updated>
<author>
<name>Ted Kremenek</name>
<email>kremenek@apple.com</email>
</author>
<published>2014-01-17T06:24:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=9aedc159ef4ccbacec1c77e0a425eb0f62bcf4f5'/>
<id>urn:sha1:9aedc159ef4ccbacec1c77e0a425eb0f62bcf4f5</id>
<content type='text'>
This allows the following syntax:

  void baz(__attribute__((nonnull)) const char *str);

instead of:

  void baz(const char *str) __attribute__((nonnull(1)));

This also extends to Objective-C methods.

The checking logic in Sema is not as clean as I would like.  Effectively
now we need to check both the FunctionDecl/ObjCMethodDecl and the parameters,
so the point of truth is spread in two places, but the logic isn't that
cumbersome.

Implements &lt;rdar://problem/14691443&gt;.

llvm-svn: 199467
</content>
</entry>
<entry>
<title>clang/test: [PR8833] Introduce the feature "LP64" to suppress LLP64-incompatible tests.</title>
<updated>2012-09-12T10:45:40+00:00</updated>
<author>
<name>NAKAMURA Takumi</name>
<email>geek4civic@gmail.com</email>
</author>
<published>2012-09-12T10:45:40+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=fcd16e36c80ecf929179f5ce085ae0200878139e'/>
<id>urn:sha1:fcd16e36c80ecf929179f5ce085ae0200878139e</id>
<content type='text'>
I think some of them could be rewritten to fit also LLP64.

llvm-svn: 163699
</content>
</entry>
<entry>
<title>Added a new attribute, objc_root_class, which informs the compiler when a root class is intentionally declared.</title>
<updated>2012-04-06T18:12:22+00:00</updated>
<author>
<name>Patrick Beard</name>
<email>pcbeard@mac.com</email>
</author>
<published>2012-04-06T18:12:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=acfbe9e1f22886d82c503cd0c20dc0ef3bf9f12a'/>
<id>urn:sha1:acfbe9e1f22886d82c503cd0c20dc0ef3bf9f12a</id>
<content type='text'>
The warning this inhibits, -Wobjc-root-class, is opt-in for now. However, all clang unit tests that would trigger
the warning have been updated to use -Wno-objc-root-class. &lt;rdar://problem/7446698&gt;

llvm-svn: 154187
</content>
</entry>
<entry>
<title>Enforce nonnull __attribute__ on Objective-C method calls.</title>
<updated>2011-04-15T22:06:22+00:00</updated>
<author>
<name>Fariborz Jahanian</name>
<email>fjahanian@apple.com</email>
</author>
<published>2011-04-15T22:06:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.raptorcs.com/git/bcm5719-llvm/commit/?id=0fe1a9861cc3ea98d2cbe5e257953a612303f7f5'/>
<id>urn:sha1:0fe1a9861cc3ea98d2cbe5e257953a612303f7f5</id>
<content type='text'>
// rdar://9287695

llvm-svn: 129615
</content>
</entry>
</feed>
