r294800 - Don't let EvaluationModes dictate whether an invalid base is OK

2017-02-10 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Fri Feb 10 16:52:29 2017 New Revision: 294800 URL: http://llvm.org/viewvc/llvm-project?rev=294800&view=rev Log: Don't let EvaluationModes dictate whether an invalid base is OK What we want to actually control this behavior is something more local than an EvalutationMode. Please

r294662 - Add support for armv7ve flag in clang (PR31358).

2017-02-09 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu Feb 9 17:30:10 2017 New Revision: 294662 URL: http://llvm.org/viewvc/llvm-project?rev=294662&view=rev Log: Add support for armv7ve flag in clang (PR31358). This is a followup change to add v7ve support to clang for gcc compatibility. Please see r294661. Patch by Manoj Gup

r293871 - Fix typo. NFC

2017-02-02 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu Feb 2 01:53:55 2017 New Revision: 293871 URL: http://llvm.org/viewvc/llvm-project?rev=293871&view=rev Log: Fix typo. NFC Modified: cfe/trunk/lib/AST/ExprConstant.cpp Modified: cfe/trunk/lib/AST/ExprConstant.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/A

Re: r291963 - [clang] Emit `diagnose_if` warnings from system headers

2017-02-01 Thread George Burgess IV via cfe-commits
Awesome. Thank you all! :) On Wed, Feb 1, 2017 at 9:25 AM, Hans Wennborg wrote: > Merged this (r291963) in r293783. > > And the others (r293360 + r293369) in r293784. > > Thanks, > Hans > > On Tue, Jan 31, 2017 at 7:17 PM, Richard Smith > wrote: > > I'm fine with these patches being merged. Hop

Re: r291963 - [clang] Emit `diagnose_if` warnings from system headers

2017-01-31 Thread George Burgess IV via cfe-commits
> IIUC the major risk is that diagnose_if itself turns out to be broken, not that we'd miscompile anything? Correct. These patches should be NFC to code that doesn't use diagnose_if. If something about that patch *had* to break existing non-diagnose_if-aware code, we're now calling Sema::CheckFun

Re: r291963 - [clang] Emit `diagnose_if` warnings from system headers

2017-01-31 Thread George Burgess IV via cfe-commits
> If not, perhaps we should disable the attribute for the Clang 4 release instead FWIW, I'd strongly prefer to do this over letting diagnose_if go into Clang 4 unpatched. So, if my patch does feel too big, I'm happy to let diagnose_if be a new-in-clang-5 attribute. :) On Tue, Jan 31, 2017 at 11:1

r293369 - Attempt to unbreak buildbots.

2017-01-27 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Fri Jan 27 22:16:32 2017 New Revision: 293369 URL: http://llvm.org/viewvc/llvm-project?rev=293369&view=rev Log: Attempt to unbreak buildbots. r293360 broke some ARM bots, because size_t on those targets is apparently `unsigned int`, not `unsigned long`. `sizeof(whatever)` shoul

r293360 - Change how we handle diagnose_if attributes.

2017-01-27 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Fri Jan 27 20:19:40 2017 New Revision: 293360 URL: http://llvm.org/viewvc/llvm-project?rev=293360&view=rev Log: Change how we handle diagnose_if attributes. This patch changes how we handle argument-dependent `diagnose_if` attributes. In particular, we now check them in the sam

Re: [PATCH] D28889: Change where we handle arg-dependent diagnose_if attributes

2017-01-23 Thread George Burgess IV via cfe-commits
> Also, I plan to submit this (once it's LGTM'ed) to the 4.0 branch. Is that OK with you, Richard? (To be clear, I'll check with Hans before I submit this there, as well. Just trying to save a round-trip. :) ) On Mon, Jan 23, 2017 at 4:39 PM, George Burgess IV via Phabricator < revi...@reviews.ll

r291997 - Fix a typo. NFC.

2017-01-13 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Fri Jan 13 23:19:34 2017 New Revision: 291997 URL: http://llvm.org/viewvc/llvm-project?rev=291997&view=rev Log: Fix a typo. NFC. Modified: cfe/trunk/lib/Sema/SemaOverload.cpp Modified: cfe/trunk/lib/Sema/SemaOverload.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/

Re: r291963 - [clang] Emit `diagnose_if` warnings from system headers

2017-01-13 Thread George Burgess IV via cfe-commits
Do we want to consider merging this into the release branch? Seems like more of a bugfix than a feature to me. On Fri, Jan 13, 2017 at 2:11 PM, Eric Fiselier via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: ericwf > Date: Fri Jan 13 16:11:40 2017 > New Revision: 291963 > > URL: http

r291493 - Add a test for diagnose_if.

2017-01-09 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Mon Jan 9 16:43:16 2017 New Revision: 291493 URL: http://llvm.org/viewvc/llvm-project?rev=291493&view=rev Log: Add a test for diagnose_if. Forgot to add this file as a part of r291418. Added: cfe/trunk/test/SemaCXX/diagnose_if-ext.cpp Added: cfe/trunk/test/SemaCXX/diagno

Re: r291058 - [Sema] Mark undefined ctors as deleted. NFC.

2017-01-09 Thread George Burgess IV via cfe-commits
se SFINAE magic. On Mon, Jan 9, 2017 at 8:34 AM, David Blaikie wrote: > Alternatively could make the bool ctor a template with some SFINAE to > restrict it to only parameters of type bool - thus blocking all conversions > there, if they're particularly problematic. > > On Wed,

r291422 - Add release notes for `diagnose_if`

2017-01-08 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Sun Jan 8 23:58:18 2017 New Revision: 291422 URL: http://llvm.org/viewvc/llvm-project?rev=291422&view=rev Log: Add release notes for `diagnose_if` Bots seem happy with `diagnose_if` so far, so I'm optimistically adding release notes for it. Modified: cfe/trunk/docs/Releas

r291418 - Add the diagnose_if attribute to clang.

2017-01-08 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Sun Jan 8 22:12:14 2017 New Revision: 291418 URL: http://llvm.org/viewvc/llvm-project?rev=291418&view=rev Log: Add the diagnose_if attribute to clang. `diagnose_if` can be used to have clang emit either warnings or errors for function calls that meet user-specified conditions.

r291264 - Clean up redundant isa before getAs. NFC.

2017-01-06 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Fri Jan 6 13:10:48 2017 New Revision: 291264 URL: http://llvm.org/viewvc/llvm-project?rev=291264&view=rev Log: Clean up redundant isa before getAs. NFC. Modified: cfe/trunk/lib/CodeGen/CGCall.cpp Modified: cfe/trunk/lib/CodeGen/CGCall.cpp URL: http://llvm.org/viewvc/llvm

r291058 - [Sema] Mark undefined ctors as deleted. NFC.

2017-01-04 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Jan 4 19:21:21 2017 New Revision: 291058 URL: http://llvm.org/viewvc/llvm-project?rev=291058&view=rev Log: [Sema] Mark undefined ctors as deleted. NFC. Looks like these functions exist just to prevent bad implicit conversions. Rather than waiting for the linker to complain

r291020 - [Parse] Don't ignore attributes after a late-parsed attr.

2017-01-04 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Jan 4 16:43:01 2017 New Revision: 291020 URL: http://llvm.org/viewvc/llvm-project?rev=291020&view=rev Log: [Parse] Don't ignore attributes after a late-parsed attr. Without this, we drop everything after the first late-parsed attribute in a single __attribute__. (Where "dr

r290991 - [Sema] Replace remove_if+erase with erase_if. NFC.

2017-01-04 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Jan 4 13:16:29 2017 New Revision: 290991 URL: http://llvm.org/viewvc/llvm-project?rev=290991&view=rev Log: [Sema] Replace remove_if+erase with erase_if. NFC. Modified: cfe/trunk/lib/Sema/SemaCUDA.cpp cfe/trunk/lib/Sema/SemaOverload.cpp Modified: cfe/trunk/lib/Sema

r290916 - Re-add objectsize function/incomplete type checks.

2017-01-03 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Tue Jan 3 17:35:19 2017 New Revision: 290916 URL: http://llvm.org/viewvc/llvm-project?rev=290916&view=rev Log: Re-add objectsize function/incomplete type checks. I accidentally omitted these when refactoring this code. This caused problems when building parts of the test-suite

r290661 - [CodeGen] Unique constant CompoundLiterals.

2016-12-27 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Dec 28 01:27:40 2016 New Revision: 290661 URL: http://llvm.org/viewvc/llvm-project?rev=290661&view=rev Log: [CodeGen] Unique constant CompoundLiterals. Our newly aggressive constant folding logic makes it possible for CGExprConstant to see the same CompoundLiteralExpr more

Re: r290577 - Add a test for `const` folding introduced by r290297. NFC.

2016-12-26 Thread George Burgess IV via cfe-commits
r290584 :) On Mon, Dec 26, 2016 at 8:30 PM, George Burgess IV < george.burgess...@gmail.com> wrote: > SG; working on a follow-up now. Thanks! > > On Mon, Dec 26, 2016 at 8:26 PM, Richard Smith > wrote: > >> On 26 December 2016 at 20:01, George Burgess IV via c

r290584 - Emit CCEDiags when evaluating a const variable.

2016-12-26 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Mon Dec 26 23:33:20 2016 New Revision: 290584 URL: http://llvm.org/viewvc/llvm-project?rev=290584&view=rev Log: Emit CCEDiags when evaluating a const variable. This addresses post-review feedback from r290577. Modified: cfe/trunk/lib/AST/ExprConstant.cpp cfe/trunk/test

Re: r290577 - Add a test for `const` folding introduced by r290297. NFC.

2016-12-26 Thread George Burgess IV via cfe-commits
SG; working on a follow-up now. Thanks! On Mon, Dec 26, 2016 at 8:26 PM, Richard Smith wrote: > On 26 December 2016 at 20:01, George Burgess IV via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Author: gbiv >> Date: Mon Dec 26 22:01:22 2016 >> New

r290577 - Add a test for `const` folding introduced by r290297. NFC.

2016-12-26 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Mon Dec 26 22:01:22 2016 New Revision: 290577 URL: http://llvm.org/viewvc/llvm-project?rev=290577&view=rev Log: Add a test for `const` folding introduced by r290297. NFC. AFAICT, we didn't add a test targeted at the new "const can sometimes act as constexpr" behavior introduced

Re: r290169 - Revert r290149: Add the alloc_size attribute to clang.

2016-12-22 Thread George Burgess IV via cfe-commits
It looks like the root of this is that we're treating calls to `allocsize` functions as AllocLike (e.g. any allocation function type except realloc) functions, which caused us to perform invalid optimizations. For example, in ReallocFreedPointerTest, EarlyCSE DCE'd the realloc because llvm::isInstr

Re: r290169 - Revert r290149: Add the alloc_size attribute to clang.

2016-12-22 Thread George Burgess IV via cfe-commits
Okay, I'm seeing this failure now if I tag my system's `realloc` declaration with `alloc_size`. (Which FreeBSD seems to do in their headers). Because all that clang does with `alloc_size` is use it to answer `__builtin_object_size` queries and lower it to LLVM's `allocsize` attribute, this is presu

Re: r290169 - Revert r290149: Add the alloc_size attribute to clang.

2016-12-22 Thread George Burgess IV via cfe-commits
Yes, this was reapplied in r290297 with fixes for the msan issue we caught; these asan unit test failures are news to me. Can you give me the command that you're using to run these tests, please? On Thu, Dec 22, 2016 at 11:10 AM, Dimitry Andric wrote: > On 20 Dec 2016, at 09:28, Chandler Carruth

r290356 - Fix warning introduced by r290297.

2016-12-22 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu Dec 22 13:00:31 2016 New Revision: 290356 URL: http://llvm.org/viewvc/llvm-project?rev=290356&view=rev Log: Fix warning introduced by r290297. Modified: cfe/trunk/lib/Sema/SemaDeclAttr.cpp Modified: cfe/trunk/lib/Sema/SemaDeclAttr.cpp URL: http://llvm.org/viewvc/llvm-

r290353 - Make alloc_size only applicable to Functions.

2016-12-22 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu Dec 22 12:48:34 2016 New Revision: 290353 URL: http://llvm.org/viewvc/llvm-project?rev=290353&view=rev Log: Make alloc_size only applicable to Functions. I don't remember why I didn't make alloc_size only applicable to Functions a year ago, but I can't see any compelling re

r290297 - Add the alloc_size attribute to clang, attempt 2.

2016-12-21 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Dec 21 20:50:20 2016 New Revision: 290297 URL: http://llvm.org/viewvc/llvm-project?rev=290297&view=rev Log: Add the alloc_size attribute to clang, attempt 2. This is a recommit of r290149, which was reverted in r290169 due to msan failures. msan was failing because we were

r290149 - Add the alloc_size attribute to clang.

2016-12-19 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Mon Dec 19 19:05:42 2016 New Revision: 290149 URL: http://llvm.org/viewvc/llvm-project?rev=290149&view=rev Log: Add the alloc_size attribute to clang. This patch does three things: - Gives us the alloc_size attribute in clang, which lets us infer the number of bytes handed b

r289571 - [Sema] Prefer SmallVector over `new`ed memory blocks. NFC.

2016-12-13 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Tue Dec 13 13:22:56 2016 New Revision: 289571 URL: http://llvm.org/viewvc/llvm-project?rev=289571&view=rev Log: [Sema] Prefer SmallVector over `new`ed memory blocks. NFC. Modified: cfe/trunk/lib/Sema/SemaOverload.cpp Modified: cfe/trunk/lib/Sema/SemaOverload.cpp URL: http

r288534 - [Sema] Reset a BumpPtrAllocator on clear(). NFC.

2016-12-02 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Fri Dec 2 15:00:12 2016 New Revision: 288534 URL: http://llvm.org/viewvc/llvm-project?rev=288534&view=rev Log: [Sema] Reset a BumpPtrAllocator on clear(). NFC. Looks like the reset() call was omitted by accident. Modified: cfe/trunk/lib/Sema/SemaOverload.cpp Modified: cf

r288414 - Add a space in a run line. NFC.

2016-12-01 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu Dec 1 14:16:56 2016 New Revision: 288414 URL: http://llvm.org/viewvc/llvm-project?rev=288414&view=rev Log: Add a space in a run line. NFC. Modified: cfe/trunk/test/CodeGenCXX/enable_if.cpp Modified: cfe/trunk/test/CodeGenCXX/enable_if.cpp URL: http://llvm.org/viewvc/

r288388 - [TableGen] Ignore fake args for parsing-related arg counts.

2016-12-01 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu Dec 1 11:52:39 2016 New Revision: 288388 URL: http://llvm.org/viewvc/llvm-project?rev=288388&view=rev Log: [TableGen] Ignore fake args for parsing-related arg counts. We should complain about the following: ``` void foo() __attribute__((unavailable("a", "b"))); ``` Inste

r288297 - [TableGen] Minor clean-ups. NFC.

2016-11-30 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Nov 30 18:13:18 2016 New Revision: 288297 URL: http://llvm.org/viewvc/llvm-project?rev=288297&view=rev Log: [TableGen] Minor clean-ups. NFC. Primarily: try to use DenseSet instead of std::set, and use pretty range algos where we can. Small sizes were arbitrarily chosen. M

r287187 - [Sema] Fix a bug in enable_if condition instantiation.

2016-11-16 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Nov 16 19:33:54 2016 New Revision: 287187 URL: http://llvm.org/viewvc/llvm-project?rev=287187&view=rev Log: [Sema] Fix a bug in enable_if condition instantiation. During template instantiation, we currently fall back to just calling Sema::SubstExpr for enable_if attributes

r287154 - Use the member function location in enable_if diagnostics.

2016-11-16 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Nov 16 15:31:25 2016 New Revision: 287154 URL: http://llvm.org/viewvc/llvm-project?rev=287154&view=rev Log: Use the member function location in enable_if diagnostics. Before: :3:3: error: no matching member function for call to 'bar' Foo().bar(); ^ After: :3:9: error:

[PATCH] D26410: [CodeGen] Don't emit the same global block multiple times.

2016-11-11 Thread George Burgess IV via cfe-commits
george.burgess.iv updated this revision to Diff 77669. george.burgess.iv marked an inline comment as done. george.burgess.iv added a comment. Thanks for the review! I'll submit this with https://reviews.llvm.org/D14274. :) https://reviews.llvm.org/D26410 Files: lib/CodeGen/CGBlocks.cpp lib

r286506 - [Sema] Range-ify for loop, add period to comment. NFC.

2016-11-10 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu Nov 10 15:47:12 2016 New Revision: 286506 URL: http://llvm.org/viewvc/llvm-project?rev=286506&view=rev Log: [Sema] Range-ify for loop, add period to comment. NFC. Modified: cfe/trunk/lib/Sema/SemaDeclAttr.cpp cfe/trunk/lib/Sema/SemaOverload.cpp Modified: cfe/trunk/

r286500 - Clean up uses of unique_ptr for RAII objects. NFC.

2016-11-10 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu Nov 10 14:43:52 2016 New Revision: 286500 URL: http://llvm.org/viewvc/llvm-project?rev=286500&view=rev Log: Clean up uses of unique_ptr for RAII objects. NFC. - EnterExpressionEvaluationContext allows you to specify whether you *actually* want to enter an evaluation conte

[PATCH] D26410: [CodeGen] Don't emit the same global block multiple times.

2016-11-08 Thread George Burgess IV via cfe-commits
george.burgess.iv created this revision. george.burgess.iv added a reviewer: rjmccall. george.burgess.iv added a subscriber: cfe-commits. https://reviews.llvm.org/D14274 makes our constexpr evaluator more aggressive with some variables marked `const`. This changes how we behave on code like the

[PATCH] D14274: Add alloc_size attribute to clang

2016-11-08 Thread George Burgess IV via cfe-commits
george.burgess.iv updated this revision to Diff 77222. george.burgess.iv added a comment. Rebased and made the `__builtin_object_size` code a tiny bit cleaner. The blocks bugfix I mentioned will be up as a separate review in a few minutes. :) https://reviews.llvm.org/D14274 Files: include/c

r286201 - Make a const variable static. NFC.

2016-11-07 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Mon Nov 7 21:30:49 2016 New Revision: 286201 URL: http://llvm.org/viewvc/llvm-project?rev=286201&view=rev Log: Make a const variable static. NFC. Modified: cfe/trunk/lib/CodeGen/CGBlocks.cpp Modified: cfe/trunk/lib/CodeGen/CGBlocks.cpp URL: http://llvm.org/viewvc/llvm-pr

r285873 - [CodeGen] Use StringRef. NFC.

2016-11-02 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Nov 2 21:21:43 2016 New Revision: 285873 URL: http://llvm.org/viewvc/llvm-project?rev=285873&view=rev Log: [CodeGen] Use StringRef. NFC. Looks like CurFn's name outlives FunctionName, so we can just pass StringRefs around rather than going from a StringRef to a std::string

[PATCH] D14274: Add alloc_size attribute to clang

2016-11-02 Thread George Burgess IV via cfe-commits
george.burgess.iv added a comment. With any luck, this'll be on the top of my to-do list next week. :) https://reviews.llvm.org/D14274 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

r285458 - Make a function static. NFC.

2016-10-28 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Fri Oct 28 16:42:06 2016 New Revision: 285458 URL: http://llvm.org/viewvc/llvm-project?rev=285458&view=rev Log: Make a function static. NFC. Modified: cfe/trunk/lib/Sema/SemaOverload.cpp Modified: cfe/trunk/lib/Sema/SemaOverload.cpp URL: http://llvm.org/viewvc/llvm-projec

[PATCH] D24999: [Sema] Only relax array-at-end-of-object checks in __builtin_object_size when -fno-strict-aliasing is given.

2016-09-27 Thread George Burgess IV via cfe-commits
george.burgess.iv created this revision. george.burgess.iv added reviewers: joerg, rsmith. george.burgess.iv added a subscriber: cfe-commits. Mostly asking for a review to verify that you guys are happy with this approach. Given that Hal said struct-path-tbaa doesn't really deal with arrays (yet)

r282124 - [Sema] Fix PR30481: crash on checking printf args.

2016-09-21 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Sep 21 19:00:26 2016 New Revision: 282124 URL: http://llvm.org/viewvc/llvm-project?rev=282124&view=rev Log: [Sema] Fix PR30481: crash on checking printf args. We were falling through from one case to another in a switch statement. Oops. Modified: cfe/trunk/lib/Sema/Sem

Re: r281277 - [Sema] Fix PR30346: relax __builtin_object_size checks.

2016-09-20 Thread George Burgess IV via cfe-commits
Noted; thanks for the correction. :) On Tue, Sep 20, 2016 at 3:04 AM, Joerg Sonnenberger via cfe-commits < cfe-commits@lists.llvm.org> wrote: > On Mon, Sep 19, 2016 at 09:21:33PM -0700, George Burgess IV wrote: > > I'm entirely unfamiliar with struct-path-tbaa, so Hal, do you see a > reason > > w

Re: r281277 - [Sema] Fix PR30346: relax __builtin_object_size checks.

2016-09-19 Thread George Burgess IV via cfe-commits
WFM; I'll put together a patch that only allows this under -fno-strict-aliasing. I'm entirely unfamiliar with struct-path-tbaa, so Hal, do you see a reason why struct-path-tbaa wouldn't play nicely with flexible arrays at the end of types? Glancing at it, I don't think it should cause problems, bu

Re: r281277 - [Sema] Fix PR30346: relax __builtin_object_size checks.

2016-09-13 Thread George Burgess IV via cfe-commits
n Tue, Sep 13, 2016 at 12:51 PM, Richard Smith via cfe-commits < cfe-commits@lists.llvm.org> wrote: > On Tue, Sep 13, 2016 at 10:44 AM, Joerg Sonnenberger via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> On Mon, Sep 12, 2016 at 11:50:36PM -, George Bu

r281277 - [Sema] Fix PR30346: relax __builtin_object_size checks.

2016-09-12 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Mon Sep 12 18:50:35 2016 New Revision: 281277 URL: http://llvm.org/viewvc/llvm-project?rev=281277&view=rev Log: [Sema] Fix PR30346: relax __builtin_object_size checks. This patch makes us act more conservatively when trying to determine the objectsize for an array at the end of

r281017 - [Docs] Fix typos, remove trailing whitespace.

2016-09-08 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu Sep 8 21:45:48 2016 New Revision: 281017 URL: http://llvm.org/viewvc/llvm-project?rev=281017&view=rev Log: [Docs] Fix typos, remove trailing whitespace. Avoided wrapping NullabilityDocs at 80cols, since that would've made this diff much bigger, and never-ending lines seems

r280852 - Move CHECK right before the function it describes.

2016-09-07 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Sep 7 15:15:03 2016 New Revision: 280852 URL: http://llvm.org/viewvc/llvm-project?rev=280852&view=rev Log: Move CHECK right before the function it describes. Modified: cfe/trunk/test/CodeGen/overloadable.c Modified: cfe/trunk/test/CodeGen/overloadable.c URL: http://l

Re: [PATCH] D24113: Allow implicit conversions between incompatible pointer types in overload resolution in C.

2016-09-07 Thread George Burgess IV via cfe-commits
Fix committed as r280847 -- thanks for the reports! > It seems to me that we could handle this by ranking viable-but-ill-formed conversion sequences before non-viable ones in clang::isBetterOverloadCandidate That's what I was thinking, too. :) > Clang reports an ambiguity on line 3 TIL. Woohoo

r280847 - [Sema] Compare bad conversions in overload resolution.

2016-09-07 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Sep 7 15:03:19 2016 New Revision: 280847 URL: http://llvm.org/viewvc/llvm-project?rev=280847&view=rev Log: [Sema] Compare bad conversions in overload resolution. r280553 introduced an issue where we'd emit ambiguity errors for code like: ``` void foo(int *, int); void foo

Re: [PATCH] D24113: Allow implicit conversions between incompatible pointer types in overload resolution in C.

2016-09-06 Thread George Burgess IV via cfe-commits
george.burgess.iv added a comment. > Although I think that users will expect atomic_add(unsigned int *, 5) to > work.without error Totally agree; I was just making sure that I understood the problem. :) I think, with a small tweak in semantics, we can make everything work without needing to p

Re: [PATCH] D24113: Allow implicit conversions between incompatible pointer types in overload resolution in C.

2016-09-06 Thread George Burgess IV via cfe-commits
george.burgess.iv marked an inline comment as done. george.burgess.iv added a comment. Thanks for the heads-up! I'm assuming that below is an example of code that this patch broke? void foo(int *a, int) __attribute__((overloadable)); void foo(unsigned int *a, unsigned int) __attribute__((ove

Re: [PATCH] D24218: [libc++] Fix support for multibyte thousands_sep and decimal_point in moneypunct_byname

2016-09-03 Thread George Burgess IV via cfe-commits
george.burgess.iv added a subscriber: george.burgess.iv. george.burgess.iv added a comment. Just a few drive-by nits. Thanks for the patch! Comment at: src/locale.cpp:5849 @@ -5828,4 +5848,3 @@ __decimal_point_ = base::do_decimal_point(); -if (*lc->mon_thousands_sep

r280562 - [Sema] Fix how we set implicit conversion kinds.

2016-09-02 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Fri Sep 2 19:28:25 2016 New Revision: 280562 URL: http://llvm.org/viewvc/llvm-project?rev=280562&view=rev Log: [Sema] Fix how we set implicit conversion kinds. We have invariants we like to guarantee for the `ImplicitConversionKind`s in a `StandardConversionSequence`. These we

Re: [PATCH] D24113: Allow implicit conversions between incompatible pointer types in overload resolution in C.

2016-09-02 Thread George Burgess IV via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL280553: [Sema] Relax overloading restrictions in C. (authored by gbiv). Changed prior to commit: https://reviews.llvm.org/D24113?vs=69922&id=70251#toc Repository: rL LLVM https://reviews.llvm.org/D2

Re: [PATCH] D24113: Allow implicit conversions between incompatible pointer types in overload resolution in C.

2016-09-02 Thread George Burgess IV via cfe-commits
george.burgess.iv marked 2 inline comments as done. Comment at: lib/Sema/SemaOverload.cpp:1813-1815 @@ -1795,5 +1812,5 @@ // and we don't know what conversions it may overlap with. - SCS.First = ICK_C_Only_Conversion; - SCS.Second = ICK_C_Only_Conversion; - SCS.Third = ICK_C

r280553 - [Sema] Relax overloading restrictions in C.

2016-09-02 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Fri Sep 2 17:59:57 2016 New Revision: 280553 URL: http://llvm.org/viewvc/llvm-project?rev=280553&view=rev Log: [Sema] Relax overloading restrictions in C. This patch allows us to perform incompatible pointer conversions when resolving overloads in C. So, the following code wil

Re: [PATCH] D24152: Support the overloadable attribute with _Generic expressions

2016-09-02 Thread George Burgess IV via cfe-commits
george.burgess.iv added inline comments. Comment at: lib/Sema/SemaOverload.cpp:12996 @@ +12995,3 @@ + // selection expression. + std::vector AssocExprs(GSE->getAssocExprs().vec()); + unsigned ResultIdx = GSE->getResultIndex(); aaron.ballman wrote: >

Re: [PATCH] D24152: Support the overloadable attribute with _Generic expressions

2016-09-01 Thread George Burgess IV via cfe-commits
george.burgess.iv added a subscriber: george.burgess.iv. george.burgess.iv added a comment. Just a drive-by nit. Thanks for the patch! Comment at: lib/Sema/SemaOverload.cpp:12996 @@ +12995,3 @@ + // selection expression. + std::vector AssocExprs(GSE->getAssocExprs().ve

r280333 - Fix typos in comments.

2016-08-31 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Aug 31 20:26:58 2016 New Revision: 280333 URL: http://llvm.org/viewvc/llvm-project?rev=280333&view=rev Log: Fix typos in comments. Modified: cfe/trunk/lib/Sema/SemaExprObjC.cpp Modified: cfe/trunk/lib/Sema/SemaExprObjC.cpp URL: http://llvm.org/viewvc/llvm-project/cfe/

[PATCH] D24113: Allow implicit conversions between incompatible pointer types in overload resolution in C.

2016-08-31 Thread George Burgess IV via cfe-commits
george.burgess.iv created this revision. george.burgess.iv added a reviewer: rsmith. george.burgess.iv added a subscriber: cfe-commits. In C, we allow pointer conversions like: ``` void foo(int *a); long b; void runFoo() { foo(&b); } ``` ...But not when overloading: ``` int bar(char *a) __attri

r280269 - Fix a typo in a comment.

2016-08-31 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Aug 31 13:14:15 2016 New Revision: 280269 URL: http://llvm.org/viewvc/llvm-project?rev=280269&view=rev Log: Fix a typo in a comment. Modified: cfe/trunk/include/clang/Sema/Sema.h Modified: cfe/trunk/include/clang/Sema/Sema.h URL: http://llvm.org/viewvc/llvm-project/cf

r279702 - Remove a pointless LLVM_CONSTEXPR. NFC.

2016-08-24 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Aug 24 20:54:37 2016 New Revision: 279702 URL: http://llvm.org/viewvc/llvm-project?rev=279702&view=rev Log: Remove a pointless LLVM_CONSTEXPR. NFC. Modified: cfe/trunk/lib/AST/ASTContext.cpp Modified: cfe/trunk/lib/AST/ASTContext.cpp URL: http://llvm.org/viewvc/llvm-p

Re: r278471 - [Sema] Fix a crash on variadic enable_if functions.

2016-08-11 Thread George Burgess IV via cfe-commits
hanks, > George > > On Thu, Aug 11, 2016 at 9:12 PM, George Burgess IV via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Author: gbiv >> Date: Thu Aug 11 23:12:31 2016 >> New Revision: 278471 >> >> URL: http://llvm.org/viewvc/llv

r278472 - [Sema] Fix the wording of a comment. NFC.

2016-08-11 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu Aug 11 23:19:35 2016 New Revision: 278472 URL: http://llvm.org/viewvc/llvm-project?rev=278472&view=rev Log: [Sema] Fix the wording of a comment. NFC. Modified: cfe/trunk/lib/Sema/SemaOverload.cpp Modified: cfe/trunk/lib/Sema/SemaOverload.cpp URL: http://llvm.org/viewv

Re: r278471 - [Sema] Fix a crash on variadic enable_if functions.

2016-08-11 Thread George Burgess IV via cfe-commits
Hi Richard, Would you mind if I merged this into the 3.9 branch? :) Thanks, George On Thu, Aug 11, 2016 at 9:12 PM, George Burgess IV via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: gbiv > Date: Thu Aug 11 23:12:31 2016 > New Revision: 278471 > > URL: http:/

r278471 - [Sema] Fix a crash on variadic enable_if functions.

2016-08-11 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu Aug 11 23:12:31 2016 New Revision: 278471 URL: http://llvm.org/viewvc/llvm-project?rev=278471&view=rev Log: [Sema] Fix a crash on variadic enable_if functions. Currently, when trying to evaluate an enable_if condition, we try to evaluate all arguments a user passes to a fun

Re: [PATCH] D14274: Add alloc_size attribute to clang

2016-08-03 Thread George Burgess IV via cfe-commits
george.burgess.iv added inline comments. Comment at: test/CodeGenCXX/alloc-size.cpp:66 @@ +65,3 @@ + // CHECK: ret i32 122 + return __builtin_object_size(my_malloc(), 0) + + __builtin_object_size(my_calloc(5), 0) + ahatanak wrote: > george.burgess.iv wro

Re: [PATCH] D14274: Add alloc_size attribute to clang

2016-08-03 Thread George Burgess IV via cfe-commits
george.burgess.iv added a comment. > I'm wondering what the status of this patch is since someone has asked us to > add support for this attribute in clang. Are you still waiting for review? Waiting for an LGTM from Richard, though this patch currently doesn't pass all tests. One of the change

r276577 - [Sema] Replace mem_fn with lambdas. NFC.

2016-07-24 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Sun Jul 24 18:12:40 2016 New Revision: 276577 URL: http://llvm.org/viewvc/llvm-project?rev=276577&view=rev Log: [Sema] Replace mem_fn with lambdas. NFC. I'm told that some optimizers like lambdas a lot more than mem_fn. Given that the readability difference is basically nil, an

Re: r276232 - [Sema] Fix PR28623.

2016-07-22 Thread George Burgess IV via cfe-commits
t;> Would you like me to merge it to the 3.9 branch? >>> >>> On Fri, Jul 22, 2016 at 6:51 AM, Hans Wennborg >>> wrote: >>> >>>> Does this apply to 3.9? >>>> >>>> On Wed, Jul 20, 2016 at 11:28 PM, George Burgess IV via cfe

Re: r276232 - [Sema] Fix PR28623.

2016-07-22 Thread George Burgess IV via cfe-commits
ke me to merge it to the 3.9 branch? > > On Fri, Jul 22, 2016 at 6:51 AM, Hans Wennborg wrote: > >> Does this apply to 3.9? >> >> On Wed, Jul 20, 2016 at 11:28 PM, George Burgess IV via cfe-commits >> wrote: >> > Author: gbiv >> > Date: Wed Jul 20 22:

Re: r276232 - [Sema] Fix PR28623.

2016-07-22 Thread George Burgess IV via cfe-commits
Error message says r272936 had the error, so it looks like it would, yeah. :) Would you like me to merge it to the 3.9 branch? On Fri, Jul 22, 2016 at 6:51 AM, Hans Wennborg wrote: > Does this apply to 3.9? > > On Wed, Jul 20, 2016 at 11:28 PM, George Burgess IV via cfe-commits

r276232 - [Sema] Fix PR28623.

2016-07-20 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Jul 20 22:28:13 2016 New Revision: 276232 URL: http://llvm.org/viewvc/llvm-project?rev=276232&view=rev Log: [Sema] Fix PR28623. In atomic builtins, we assumed that the LValue conversion on the first argument would succeed. So, we would crash given code like: ``` void ovl(c

Re: [PATCH] D22334: Fix for Bug 28172 : clang crashes on invalid code (with too few arguments to __builtin_signbit) without any proper diagnostics.

2016-07-15 Thread George Burgess IV via cfe-commits
george.burgess.iv accepted this revision. george.burgess.iv added a comment. This revision is now accepted and ready to land. LGTM; thanks for the patch! https://reviews.llvm.org/D22334 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://

Re: r273911 - [ExprConstant] Fix PR28314 - crash while evluating objectsize.

2016-06-27 Thread George Burgess IV via cfe-commits
+Richard, Hans This patch fixes a crash that's also present in Clang 3.8. So, I think it should find its way into 3.8.2, if possible. Thank you! :) -- Forwarded message -- From: George Burgess IV via cfe-commits Date: Mon, Jun 27, 2016 at 12:40 PM Subject: r2

r273911 - [ExprConstant] Fix PR28314 - crash while evluating objectsize.

2016-06-27 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Mon Jun 27 14:40:41 2016 New Revision: 273911 URL: http://llvm.org/viewvc/llvm-project?rev=273911&view=rev Log: [ExprConstant] Fix PR28314 - crash while evluating objectsize. This fixes a crash in code like: ``` struct A { struct B b; char c[1]; } int foo(struct A* a) { re

r273232 - [Docs] More warning fixes to unbreak the docs buildbot.

2016-06-20 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Mon Jun 20 21:19:43 2016 New Revision: 273232 URL: http://llvm.org/viewvc/llvm-project?rev=273232&view=rev Log: [Docs] More warning fixes to unbreak the docs buildbot. A number of warnings still remain, but these were the last of the "unlexable code"-related ones (AFAICT). I c

r273227 - [Docs] Try to fix the docs buildbot.

2016-06-20 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Mon Jun 20 19:16:23 2016 New Revision: 273227 URL: http://llvm.org/viewvc/llvm-project?rev=273227&view=rev Log: [Docs] Try to fix the docs buildbot. It's complaining that it couldn't lex a compiler warning as C++. I don't blame it. Modified: cfe/trunk/docs/LanguageExtensio

Re: [PATCH] D21453: Add support for attribute "overallocated"

2016-06-20 Thread George Burgess IV via cfe-commits
george.burgess.iv added a comment. Thanks for the patch! Comment at: lib/AST/ExprConstant.cpp:1055 @@ +1054,3 @@ +// computation of __builtin_object_size. +bool OverAllocated = 1; + Did you mean `: 1` here? http://reviews.llvm.org/D21453 ___

Re: [PATCH] D17462: Fix a codegen bug for variadic functions with pass_object_size params

2016-06-16 Thread George Burgess IV via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL272971: [CodeGen] Fix a segfault caused by pass_object_size. (authored by gbiv). Changed prior to commit: http://reviews.llvm.org/D17462?vs=61041&id=61048#toc Repository: rL LLVM http://reviews.llvm

r272971 - [CodeGen] Fix a segfault caused by pass_object_size.

2016-06-16 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu Jun 16 18:06:04 2016 New Revision: 272971 URL: http://llvm.org/viewvc/llvm-project?rev=272971&view=rev Log: [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_ob

Re: [PATCH] D17462: Fix a codegen bug for variadic functions with pass_object_size params

2016-06-16 Thread George Burgess IV via cfe-commits
george.burgess.iv added inline comments. Comment at: lib/CodeGen/CGExprCXX.cpp:331 @@ -329,3 +330,3 @@ // And the rest of the call args EmitCallArgs(Args, FPT, E->arguments(), E->getDirectCallee()); return EmitCall(CGM.getTypes().arrangeCXXMethodCall(Args, FPT, required),

Re: [PATCH] D17462: Fix a codegen bug for variadic functions with pass_object_size params

2016-06-16 Thread George Burgess IV via cfe-commits
george.burgess.iv updated this revision to Diff 61041. george.burgess.iv marked 2 inline comments as done. george.burgess.iv added a comment. Addressed all feedback. http://reviews.llvm.org/D17462 Files: include/clang/CodeGen/CGFunctionInfo.h lib/CodeGen/CGCall.cpp lib/CodeGen/CGExprCXX.c

Re: r272867 - [Lex] Try to fix a 'comparison is always false' warning. NFC.

2016-06-16 Thread George Burgess IV via cfe-commits
ldn't this produce UB on a signed char > platform in the case where Ch is negative? (or is that just unspecified? > implementation defined?) > > On Wed, Jun 15, 2016 at 7:30 PM, George Burgess IV via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Author: g

r272867 - [Lex] Try to fix a 'comparison is always false' warning. NFC.

2016-06-15 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed Jun 15 21:30:33 2016 New Revision: 272867 URL: http://llvm.org/viewvc/llvm-project?rev=272867&view=rev Log: [Lex] Try to fix a 'comparison is always false' warning. NFC. Modified: cfe/trunk/lib/Lex/PPDirectives.cpp Modified: cfe/trunk/lib/Lex/PPDirectives.cpp URL: htt

Re: [PATCH] D17462: Fix a codegen bug for variadic functions with pass_object_size params

2016-06-15 Thread George Burgess IV via cfe-commits
george.burgess.iv added a comment. (: ƃuıd http://reviews.llvm.org/D17462 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D21352: Add a "declared 'nonnull' here" note to warnings where an expression is checked against null.

2016-06-14 Thread George Burgess IV via cfe-commits
george.burgess.iv added a subscriber: george.burgess.iv. george.burgess.iv accepted this revision. george.burgess.iv added a reviewer: george.burgess.iv. george.burgess.iv added a comment. This revision is now accepted and ready to land. LGTM, thanks for the patch! http://reviews.llvm.org/D21352

r272080 - [Sema] Teach CheckPlaceholderExpr about unaddressable functions.

2016-06-07 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Tue Jun 7 19:34:22 2016 New Revision: 272080 URL: http://llvm.org/viewvc/llvm-project?rev=272080&view=rev Log: [Sema] Teach CheckPlaceholderExpr about unaddressable functions. Given the following C++: ``` void foo(); void foo() __attribute__((enable_if(false, ""))); bool bar

Re: [PATCH] D17462: Fix a codegen bug for variadic functions with pass_object_size params

2016-06-06 Thread George Burgess IV via cfe-commits
george.burgess.iv added a comment. Ping :) http://reviews.llvm.org/D17462 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Re: [PATCH] D17462: Fix a codegen bug for variadic functions with pass_object_size params

2016-06-01 Thread George Burgess IV via cfe-commits
george.burgess.iv added a comment. Ping :) http://reviews.llvm.org/D17462 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

r270784 - [Sema] Use the failure bits introduced by r270781.

2016-05-25 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Wed May 25 17:38:36 2016 New Revision: 270784 URL: http://llvm.org/viewvc/llvm-project?rev=270784&view=rev Log: [Sema] Use the failure bits introduced by r270781. r270781 introduced the ability to track whether or not we might have had unmodeled side-effects during constant exp

<    1   2   3   4   >