[PATCH] D30837: [libcxx] Support for shared_ptr<T()>

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. LGTM after addressing inline comments. Sorry for the delay. Comment at: include/memory:3663 +template +struct rebind +{ This rebind isn't

[PATCH] D33340: [libcxx] [test] Add string nullptr asserts to erase functions.

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. Sorry for the delay reviewing such a simple change. https://reviews.llvm.org/D33340 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D32671: [libcxx] [test] variant: test coverage for P0602 extension

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: test/std/utilities/variant/variant.variant/variant.assign/copy.pass.cpp:389 +template +constexpr bool triviality_test = + std::is_trivially_copy_assignable::value == `triviality_test` should also compare

[PATCH] D32592: [Analyzer] Iterator Checker - Part 1: Minimal Checker for a Simple Test Case

2017-05-25 Thread Artem Dergachev via Phabricator via cfe-commits
NoQ added a comment. Sorry, got carried away by GSoC and critical stuff... In https://reviews.llvm.org/D32592#749613, @baloghadamsoftware wrote: > In https://reviews.llvm.org/D32592#747132, @NoQ wrote: > > > Then, in methods that deal with iterator `SVal`s directly, i wish we had > > hints

[PATCH] D33538: [coroutines] Support "coroutines" feature in module map requires clause

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: test/Modules/requires-coroutines.mm:1 +// RUN: rm -rf %t +// RUN: %clang_cc1 -Wauto-import -fmodules-cache-path=%t -fmodules -fimplicit-module-maps -F %S/Inputs %s -verify Should this test be called

r303844 - [OpenCL] Added regression test on invalid vector initialization.

2017-05-25 Thread Egor Churaev via cfe-commits
Author: echuraev Date: Thu May 25 01:55:02 2017 New Revision: 303844 URL: http://llvm.org/viewvc/llvm-project?rev=303844=rev Log: [OpenCL] Added regression test on invalid vector initialization. Summary: This patch increases code coverage. Reviewers: Anastasia Reviewed By: Anastasia

r303846 - [OpenCL] reserve_id_t cannot be used as argument to kernel function

2017-05-25 Thread Egor Churaev via cfe-commits
Author: echuraev Date: Thu May 25 02:18:37 2017 New Revision: 303846 URL: http://llvm.org/viewvc/llvm-project?rev=303846=rev Log: [OpenCL] reserve_id_t cannot be used as argument to kernel function Reviewers: Anastasia Reviewed By: Anastasia Subscribers: yaxunl, cfe-commits, bader

[PATCH] D33537: [clang-tidy] Exception Escape Checker

2017-05-25 Thread Balogh , Ádám via Phabricator via cfe-commits
baloghadamsoftware created this revision. Herald added a subscriber: mgorny. Finds functions which should not throw exceptions: Destructors, move constructors, move assignment operators, the main() function, swap() functions, functions marked with throw() or noexcept and functions given as

[PATCH] D33538: [coroutines] Support "coroutines" feature to module map "requires"

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. In order for libc++ to add `` to its module map, there has to be a feature that can be used to detect if coroutines support is enabled in Clang. https://reviews.llvm.org/D33538 Files: docs/Modules.rst lib/Basic/Module.cpp

[PATCH] D33537: [clang-tidy] Exception Escape Checker

2017-05-25 Thread Balogh , Ádám via Phabricator via cfe-commits
baloghadamsoftware added a comment. Supersedes https://reviews.llvm.org/D32350 https://reviews.llvm.org/D33537 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D32350: [Analyzer] Exception checker for misuse: uncaught/noncompliant throws

2017-05-25 Thread Balogh , Ádám via Phabricator via cfe-commits
baloghadamsoftware abandoned this revision. baloghadamsoftware added a comment. Superseded by https://reviews.llvm.org/D33537 https://reviews.llvm.org/D32350 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D33340: [libcxx] [test] Add string nullptr asserts to erase functions.

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. @BillyONeal Changes like this are good for post-commit review (ie just commit it). Adding clearly correct assertions and test cases is never an objectionable thing. https://reviews.llvm.org/D33340 ___ cfe-commits mailing

[PATCH] D33290: [libcxx] [test] Remove workaround for C1XX conversion-to-nullptr bug

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. @CaseyCarter Changes like this are good for post-commit review (ie just commit it) https://reviews.llvm.org/D33290 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D33290: [libcxx] [test] Remove workaround for C1XX conversion-to-nullptr bug

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. This revision is now accepted and ready to land. LGTM. https://reviews.llvm.org/D33290 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D31745: [OpenCL] Added diagnostic for implicit declaration of function in OpenCL

2017-05-25 Thread Egor Churaev via Phabricator via cfe-commits
echuraev updated this revision to Diff 100210. https://reviews.llvm.org/D31745 Files: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaDecl.cpp test/SemaOpenCL/clang-builtin-version.cl test/SemaOpenCL/to_addr_builtin.cl Index: test/SemaOpenCL/to_addr_builtin.cl

[PATCH] D33538: [coroutines] Support "coroutines" feature to module map "requires"

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 100207. EricWF added a comment. - Alphabetize newly added switch case. https://reviews.llvm.org/D33538 Files: docs/Modules.rst lib/Basic/Module.cpp test/Modules/Inputs/DependsOnModule.framework/Headers/coroutines.h

[PATCH] D32592: [Analyzer] Iterator Checker - Part 1: Minimal Checker for a Simple Test Case

2017-05-25 Thread Balogh , Ádám via Phabricator via cfe-commits
baloghadamsoftware added a comment. Any comments regarding the last changes? https://reviews.llvm.org/D32592 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D33525: [ThinLTO] Migrate ThinLTOBitcodeWriter to the new PM.

2017-05-25 Thread Chandler Carruth via Phabricator via cfe-commits
chandlerc added a comment. (focusing on the LLVM side of this review for now) Can you add an LLVM-based test? Can you add this to `lib/Passes/PassRegistry.def`? Comment at: llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp:423 + +class AARGetter { + FunctionAnalysisManager

[PATCH] D33470: [clang-tidy] Add misc-default-numerics

2017-05-25 Thread Piotr Padlewski via Phabricator via cfe-commits
Prazek updated this revision to Diff 100216. Prazek marked 8 inline comments as done. Prazek added a comment. - Thanks for the review Aaron, that is much better. https://reviews.llvm.org/D33470 Files: clang-tidy/misc/CMakeLists.txt clang-tidy/misc/DefaultNumericsCheck.cpp

[PATCH] D33353: [OpenCL] An error shall occur if any scalar operand has greater rank than the type of the vector element

2017-05-25 Thread Egor Churaev via Phabricator via cfe-commits
echuraev updated this revision to Diff 100219. echuraev marked 2 inline comments as done. https://reviews.llvm.org/D33353 Files: include/clang/Basic/DiagnosticSemaKinds.td lib/Sema/SemaExpr.cpp test/SemaOpenCL/arithmetic-conversions.cl test/SemaOpenCL/cond.cl Index:

RE: [clang-tools-extra] r303849 -

2017-05-25 Thread Florian Gross via cfe-commits
Just a commit access test with messed up log message. - Florian -Original Message- From: cfe-commits [mailto:cfe-commits-boun...@lists.llvm.org] On Behalf Of Florian Gross via cfe-commits Sent: Thursday, May 25, 2017 1:43 PM To: cfe-commits@lists.llvm.org Subject: [clang-tools-extra]

[PATCH] D33448: [CodeGen] Add thumb-mode to target-features for arm/thumb triples.

2017-05-25 Thread Florian Hahn via Phabricator via cfe-commits
fhahn added a comment. @echristo lib/Basic/Targets.cpp is indeed a much better place to add thumb-mode to the target features, thanks for pointing me in the right direction! https://reviews.llvm.org/D33448 ___ cfe-commits mailing list

[PATCH] D33448: [CodeGen] Add thumb-mode to target-features for arm/thumb triples.

2017-05-25 Thread Florian Hahn via Phabricator via cfe-commits
fhahn updated this revision to Diff 100222. fhahn retitled this revision from "[CodeGen] Add thumb-mode to function target-features for arm/thumb triples." to "[CodeGen] Add thumb-mode to target-features for arm/thumb triples.". fhahn edited the summary of this revision. fhahn added a comment.

[clang-tools-extra] r303849 -

2017-05-25 Thread Florian Gross via cfe-commits
Author: fgross Date: Thu May 25 06:43:06 2017 New Revision: 303849 URL: http://llvm.org/viewvc/llvm-project?rev=303849=rev Log: (empty) Modified: clang-tools-extra/trunk/clang-tidy/readability/BracesAroundStatementsCheck.cpp Modified:

[PATCH] D33534: [coroutines] Diagnose when promise types fail to declare either return_void or return_value.

2017-05-25 Thread Gor Nishanov via Phabricator via cfe-commits
GorNishanov accepted this revision. GorNishanov added a comment. This revision is now accepted and ready to land. LGTM https://reviews.llvm.org/D33534 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D33536: [coroutines] Bump __cpp_coroutines version

2017-05-25 Thread Gor Nishanov via Phabricator via cfe-commits
GorNishanov accepted this revision. GorNishanov added a comment. This revision is now accepted and ready to land. LGTM https://reviews.llvm.org/D33536 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D33561: [CMake] Add Android toolchain CMake cache files.

2017-05-25 Thread Leo Li via Phabricator via cfe-commits
aoli added a comment. @jroelofs we are not building builtins currently but we are planning to do so. I just added some basic configurations for builtins. https://reviews.llvm.org/D33561 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[libcxx] r303928 - libcxx: fix bootstrapping for mingw-w64

2017-05-25 Thread Martell Malone via cfe-commits
Author: martell Date: Thu May 25 17:37:15 2017 New Revision: 303928 URL: http://llvm.org/viewvc/llvm-project?rev=303928=rev Log: libcxx: fix bootstrapping for mingw-w64 Differential Revision: https://reviews.llvm.org/D33388 Modified: libcxx/trunk/cmake/config-ix.cmake

[PATCH] D33538: [coroutines] Support "coroutines" feature in module map requires clause

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Also see r303936, which re-adds to the module map and fixes the bug. https://reviews.llvm.org/D33538 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D33082: Fix Libc++ build with MinGW64

2017-05-25 Thread Martell Malone via Phabricator via cfe-commits
martell added a comment. > ! In https://reviews.llvm.org/D33082#764617, @EricWF wrote: > Defining `_GNU_SOURCE` during the library build isn't enough, it's also has > to be defined when people are using the headers, > and in that case we must depend on the compiler to pre-define it. Is it >

Re: [clang-tools-extra] r303884 - [Documentation] Mention hicpp check group in Clang-tidy main document.

2017-05-25 Thread Alexander Kornienko via cfe-commits
On 25 May 2017 19:22, "Eugene Zelenko via cfe-commits" < cfe-commits@lists.llvm.org> wrote: Author: eugenezelenko Date: Thu May 25 12:22:29 2017 New Revision: 303884 URL: http://llvm.org/viewvc/llvm-project?rev=303884=rev Log: [Documentation] Mention hicpp check group in Clang-tidy main

Re: [clang-tools-extra] r303884 - [Documentation] Mention hicpp check group in Clang-tidy main document.

2017-05-25 Thread Eugene Zelenko via cfe-commits
Hi, Alexander! On Thu, May 25, 2017 at 5:16 PM, Alexander Kornienko wrote: > > > On 25 May 2017 19:22, "Eugene Zelenko via cfe-commits" > wrote: > > Author: eugenezelenko > Date: Thu May 25 12:22:29 2017 > New Revision: 303884 > > URL:

[libcxx] r303947 - [test] make_shared<T()>(...) is, uh, libc++-specific

2017-05-25 Thread Casey Carter via cfe-commits
Author: caseycarter Date: Thu May 25 19:37:33 2017 New Revision: 303947 URL: http://llvm.org/viewvc/llvm-project?rev=303947=rev Log: [test] make_shared(...) is, uh, libc++-specific Modified:

[libcxx] r303956 - Guard against older Clang versions.

2017-05-25 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Thu May 25 20:52:59 2017 New Revision: 303956 URL: http://llvm.org/viewvc/llvm-project?rev=303956=rev Log: Guard against older Clang versions. Clang started providing -fcoroutines and defining __cpp_coroutines way before it implemented the __builtin_coro_foo functions. This

[libcxx] r303963 - Get working in C++03.

2017-05-25 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Thu May 25 22:02:54 2017 New Revision: 303963 URL: http://llvm.org/viewvc/llvm-project?rev=303963=rev Log: Get working in C++03. Clang supports coroutines in all dialects; Therefore libc++ should too, otherwise the Clang extension is unusable. I'm not convinced extending

r303934 - "*" => "+" to avoid matching on empty string.

2017-05-25 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Thu May 25 18:25:36 2017 New Revision: 303934 URL: http://llvm.org/viewvc/llvm-project?rev=303934=rev Log: "*" => "+" to avoid matching on empty string. Modified: cfe/trunk/test/Driver/baremetal.cpp Modified: cfe/trunk/test/Driver/baremetal.cpp URL:

[PATCH] D33538: [coroutines] Support "coroutines" feature in module map requires clause

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D33538#765045, @rsmith wrote: > Do we need to conditionalize this part of libc++? Nothing in the > header appears to need compiler support. That's correct. I was mistaken as to why this was needed. I mistook a bug in libc++ for the reason

r303945 - Factor resolving of header directives -> files out of module map parser.

2017-05-25 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu May 25 19:01:53 2017 New Revision: 303945 URL: http://llvm.org/viewvc/llvm-project?rev=303945=rev Log: Factor resolving of header directives -> files out of module map parser. Modified: cfe/trunk/include/clang/Lex/ModuleMap.h cfe/trunk/lib/Lex/ModuleMap.cpp

[PATCH] D33178: Remove requirement for libunwind sources.

2017-05-25 Thread Shiz via Phabricator via cfe-commits
Shiz added a comment. @EricWF: Thanks for reviewing! Is there anything else I need to do at this point or will it be committed automatically? Repository: rL LLVM https://reviews.llvm.org/D33178 ___ cfe-commits mailing list

[libcxx] r303953 - Remove incorrect #ifdef guards around variant tests.

2017-05-25 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Thu May 25 20:27:08 2017 New Revision: 303953 URL: http://llvm.org/viewvc/llvm-project?rev=303953=rev Log: Remove incorrect #ifdef guards around variant tests. The tests were previously guarded by #if defined(_LIBCPP_VER) || defined(_MSVC_STL_VER), which is both incorrect

[PATCH] D33568: Fix crash when evaluating constant expressions involving nullptr

2017-05-25 Thread Tim Northover via Phabricator via cfe-commits
t.p.northover closed this revision. t.p.northover added a comment. Thanks Richard. I've committed this as r303957. https://reviews.llvm.org/D33568 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

r303957 - Create valid LValue to represent null pointers in constant exprs

2017-05-25 Thread Tim Northover via cfe-commits
Author: tnorthover Date: Thu May 25 21:16:00 2017 New Revision: 303957 URL: http://llvm.org/viewvc/llvm-project?rev=303957=rev Log: Create valid LValue to represent null pointers in constant exprs We were leaving the SubobjectDesignator in a surprising situation, where it was allegedly valid but

[libcxx] r303936 - Re-add to the module map.

2017-05-25 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Thu May 25 18:39:29 2017 New Revision: 303936 URL: http://llvm.org/viewvc/llvm-project?rev=303936=rev Log: Re-add to the module map. The original issues were caused because didn't correctly #ifdef out enough of the header, which caused incomplete types to be used. This

[PATCH] D33538: [coroutines] Support "coroutines" feature in module map requires clause

2017-05-25 Thread Richard Smith via Phabricator via cfe-commits
rsmith added a comment. In https://reviews.llvm.org/D33538#765146, @EricWF wrote: > In https://reviews.llvm.org/D33538#765045, @rsmith wrote: > > > Do we need to conditionalize this part of libc++? Nothing in the > > header appears to need compiler support. > > > That's correct. I was mistaken

[PATCH] D33538: [coroutines] Support "coroutines" feature in module map requires clause

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D33538#765225, @rsmith wrote: > In https://reviews.llvm.org/D33538#765146, @EricWF wrote: > > > In https://reviews.llvm.org/D33538#765045, @rsmith wrote: > > > > > Do we need to conditionalize this part of libc++? Nothing in the > > > header

[libcxx] r303951 - [test] Fix breakage from r303947 =(

2017-05-25 Thread Casey Carter via cfe-commits
Author: caseycarter Date: Thu May 25 20:00:56 2017 New Revision: 303951 URL: http://llvm.org/viewvc/llvm-project?rev=303951=rev Log: [test] Fix breakage from r303947 =( Modified:

r303962 - [docs] Point coroutine link to an actual document

2017-05-25 Thread George Burgess IV via cfe-commits
Author: gbiv Date: Thu May 25 21:56:51 2017 New Revision: 303962 URL: http://llvm.org/viewvc/llvm-project?rev=303962=rev Log: [docs] Point coroutine link to an actual document Unsure if there's a better document, but what we had before led to a 404. :) Modified:

[PATCH] D28404: IRGen: Add optnone attribute on function during O0

2017-05-25 Thread Duncan P. N. Exon Smith via Phabricator via cfe-commits
dexonsmith accepted this revision. dexonsmith added a comment. This revision is now accepted and ready to land. Actually, looking through the comments, it appears that everyone (eventually) agreed with the approach in the patch. I agree too. LGTM. Mehdi, are you able to rebase and commit, or

[PATCH] D33448: [CodeGen] Add thumb-mode to target-features for arm/thumb triples.

2017-05-25 Thread Eric Christopher via Phabricator via cfe-commits
echristo accepted this revision. echristo added a comment. This revision is now accepted and ready to land. One minor nit and LGTM. Thanks! -eric Comment at: lib/Basic/Targets.cpp:5353 +// enable or disable thumb-mode per function +if (isThumb())

[PATCH] D32520: Support __fp16 vectors

2017-05-25 Thread Akira Hatanaka via Phabricator via cfe-commits
ahatanak updated this revision to Diff 100354. ahatanak added a comment. Rebase. https://reviews.llvm.org/D32520 Files: include/clang/Sema/Sema.h lib/CodeGen/CGExprScalar.cpp lib/Sema/SemaExpr.cpp test/CodeGen/fp16vec-ops.c test/Sema/fp16vec-sema.c Index: test/Sema/fp16vec-sema.c

[PATCH] D33082: Fix Libc++ build with MinGW64

2017-05-25 Thread Ben Craig via Phabricator via cfe-commits
bcraig added a comment. > Are you suggesting that libc++ should stop declaring/defining these > functions, at least publically? I think that we generally shouldn't be giving functions names that are already claimed elsewhere (like mbsnrtowcs and wcsnrtombs). It is my opinion that these

Re: r303873 - Don't defer to the GCC driver for linking arm-baremetal

2017-05-25 Thread Hans Wennborg via cfe-commits
The test was failing on Windows; r303910 for that. On Thu, May 25, 2017 at 11:55 AM, Jonathan Roelofs via cfe-commits wrote: > > > On 5/25/17 11:39 AM, Galina Kistanova wrote: > > Hello Jonathan, > > This commit broke one of our builders: > >

Re: r303873 - Don't defer to the GCC driver for linking arm-baremetal

2017-05-25 Thread Jonathan Roelofs via cfe-commits
On 5/25/17 2:41 PM, Hans Wennborg wrote: The test was failing on Windows; r303910 for that. Oh yuk.. thanks for fixing that. Jon On Thu, May 25, 2017 at 11:55 AM, Jonathan Roelofs via cfe-commits wrote: On 5/25/17 11:39 AM, Galina Kistanova wrote: Hello

r303930 - Switch from using a DiagnosticTrap and a note for "while defining a special

2017-05-25 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu May 25 17:47:05 2017 New Revision: 303930 URL: http://llvm.org/viewvc/llvm-project?rev=303930=rev Log: Switch from using a DiagnosticTrap and a note for "while defining a special member function" context notes to registering an entry on the context stack. Also reorder

[clang-tools-extra] r303909 - Earlier revert introduced an extra space, remove it.

2017-05-25 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu May 25 15:29:17 2017 New Revision: 303909 URL: http://llvm.org/viewvc/llvm-project?rev=303909=rev Log: Earlier revert introduced an extra space, remove it. Modified: clang-tools-extra/trunk/test/clang-tidy/readability-implicit-bool-cast.cpp Modified:

[PATCH] D33538: [coroutines] Support "coroutines" feature in module map requires clause

2017-05-25 Thread Richard Smith via Phabricator via cfe-commits
rsmith added a comment. In https://reviews.llvm.org/D33538#765045, @rsmith wrote: > Do we need to conditionalize this part of libc++? Nothing in the > header appears to need compiler support. Oh wait, I see what's going on. You're not testing for whether coroutines is enabled, you're

r303932 - Make test/Driver/baremetal.cpp work when output directory isn't named 'bin'.

2017-05-25 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Thu May 25 18:03:08 2017 New Revision: 303932 URL: http://llvm.org/viewvc/llvm-project?rev=303932=rev Log: Make test/Driver/baremetal.cpp work when output directory isn't named 'bin'. Modified: cfe/trunk/test/Driver/baremetal.cpp Modified:

[PATCH] D33538: [coroutines] Support "coroutines" feature in module map requires clause

2017-05-25 Thread Richard Smith via Phabricator via cfe-commits
rsmith accepted this revision. rsmith added a comment. This revision is now accepted and ready to land. In https://reviews.llvm.org/D33538#765062, @rsmith wrote: > In https://reviews.llvm.org/D33538#765045, @rsmith wrote: > > > Do we need to conditionalize this part of libc++? Nothing in the >

[PATCH] D33563: Track whether a unary operation can overflow

2017-05-25 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman created this revision. We do not explicitly model integer promotions on unary operators even though those promotions happen in practice. This patch tracks the most important piece of information about the promotion on the AST node: whether the operator can overflow or not. It

Re: r303798 - For Microsoft compatibility, set fno_operator_names

2017-05-25 Thread Reid Kleckner via cfe-commits
I agree with Nico in retrospect. Setting -fno-operator-names is too big a hammer. Instead we should add some MSVCCompat hacks to pretend we saw an identifier token instead of a keyword token when these keywords are used as declarators. On Thu, May 25, 2017 at 10:14 AM, Nico Weber

r303910 - Make test/Driver/baremetal.cpp pass on Windows

2017-05-25 Thread Hans Wennborg via cfe-commits
Author: hans Date: Thu May 25 15:39:52 2017 New Revision: 303910 URL: http://llvm.org/viewvc/llvm-project?rev=303910=rev Log: Make test/Driver/baremetal.cpp pass on Windows Modified: cfe/trunk/test/Driver/baremetal.cpp Modified: cfe/trunk/test/Driver/baremetal.cpp URL:

[PATCH] D33568: Fix crash when evaluating constant expressions involving nullptr

2017-05-25 Thread Tim Northover via Phabricator via cfe-commits
t.p.northover created this revision. Herald added a subscriber: mcrosier. For the simple casts in the test, we were crashing because the ZeroInitialization function created an LValue with an unexpected SubobjectDesignator: it was valid but didn't actually refer to a valid MostDerivedType.

[PATCH] D33568: Fix crash when evaluating constant expressions involving nullptr

2017-05-25 Thread Tim Northover via Phabricator via cfe-commits
t.p.northover updated this revision to Diff 100321. t.p.northover added a comment. Sounds very reasonable to me. I've uploaded a new diff. https://reviews.llvm.org/D33568 Files: clang/lib/AST/ExprConstant.cpp clang/test/SemaCXX/null-cast.cpp Index: clang/test/SemaCXX/null-cast.cpp

[PATCH] D33568: Fix crash when evaluating constant expressions involving nullptr

2017-05-25 Thread Richard Smith via Phabricator via cfe-commits
rsmith accepted this revision. rsmith added a comment. This revision is now accepted and ready to land. Thanks! https://reviews.llvm.org/D33568 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D33568: Fix crash when evaluating constant expressions involving nullptr

2017-05-25 Thread Richard Smith via Phabricator via cfe-commits
rsmith added inline comments. Comment at: clang/lib/AST/ExprConstant.cpp:5498-5500 Result.set((Expr*)nullptr, 0, false, true, Offset); +Result.getLValueDesignator() = +SubobjectDesignator(E->getType()->getPointeeType()); This is the only caller

[libcxx] r303929 - Correct typo: LIBCXXABI_BUILTINS_LIBRARY -> LIBCXX_BUILTINS_LIBRARY

2017-05-25 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Thu May 25 17:43:42 2017 New Revision: 303929 URL: http://llvm.org/viewvc/llvm-project?rev=303929=rev Log: Correct typo: LIBCXXABI_BUILTINS_LIBRARY -> LIBCXX_BUILTINS_LIBRARY Modified: libcxx/trunk/cmake/config-ix.cmake Modified: libcxx/trunk/cmake/config-ix.cmake URL:

[PATCH] D32842: Specify which sanitizers are covered by a sanitizer blacklist

2017-05-25 Thread George Karpenkov via Phabricator via cfe-commits
george.karpenkov added a comment. @vsk Looks reasonable to me, although I would say such a change should probably require more tests. However, I am not a C++ expert, and I am still not overly familiar with a codebase, so I'm not sure whether I should be a single reviewer.

r303908 - Revert "[AMDGPU] add __builtin_amdgcn_s_getpc"

2017-05-25 Thread Reid Kleckner via cfe-commits
Author: rnk Date: Thu May 25 15:28:26 2017 New Revision: 303908 URL: http://llvm.org/viewvc/llvm-project?rev=303908=rev Log: Revert "[AMDGPU] add __builtin_amdgcn_s_getpc" This reverts commit r303861, the LLVM intrinsic was reverted. Modified:

[PATCH] D33537: [clang-tidy] Exception Escape Checker

2017-05-25 Thread Piotr Padlewski via Phabricator via cfe-commits
Prazek added a comment. How is that compared to https://reviews.llvm.org/D19201 and the clang patch mentioned in this patch? Repository: rL LLVM https://reviews.llvm.org/D33537 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D33470: [clang-tidy] Add misc-default-numerics

2017-05-25 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman added a comment. Once you fix the typo in the check, can you run it over some large C++ code bases to see if it finds any results? Comment at: clang-tidy/misc/DefaultNumericsCheck.cpp:30 + ofClass(classTemplateSpecializationDecl( +

[PATCH] D33470: [clang-tidy] Add misc-default-numerics

2017-05-25 Thread Alexander Shaposhnikov via Phabricator via cfe-commits
alexshap added inline comments. Comment at: clang-tidy/misc/DefaultNumericsCheck.h:20 +/// This check flags usages of ``std::numeric_limits::{min,max}()`` for +/// unspecialized types. It is dangerous because it returns T(), which might is +/// rarely minimum or maximum for this

[PATCH] D28404: IRGen: Add optnone attribute on function during O0

2017-05-25 Thread Matthias Braun via Phabricator via cfe-commits
MatzeB added a comment. FWIW, I think this makes sense. Moving O0 and optnone get closer seems sensible. Even though -O3 with an optnone function indeed gives you different results today. We are basically maintaining two things for the same "do not optimize" goal. This obviously won't make O0

[PATCH] D33561: [CMake] Add Android toolchain CMake cache files.

2017-05-25 Thread Leo Li via Phabricator via cfe-commits
aoli updated this revision to Diff 100308. aoli added a comment. Add builtin configurations. https://reviews.llvm.org/D33561 Files: cmake/caches/Android-stage2.cmake cmake/caches/Android.cmake Index: cmake/caches/Android.cmake

[PATCH] D33538: [coroutines] Support "coroutines" feature in module map requires clause

2017-05-25 Thread Richard Smith via Phabricator via cfe-commits
rsmith added a comment. Do we need to conditionalize this part of libc++? Nothing in the header appears to need compiler support. https://reviews.llvm.org/D33538 ___ cfe-commits mailing list cfe-commits@lists.llvm.org

[PATCH] D33080: [Libc++] Use #pragma push_macro/pop_macro to better handle min/max on Windows

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 100269. EricWF added a comment. - Remove the external include guards for `__undef_macros` as requested by @compnerd. I couldn't come up with a easy test case that showed any notable difference having the external guards. https://reviews.llvm.org/D33080

[PATCH] D33547: Updated getting started guide for visual studio + cmake

2017-05-25 Thread Aaron Ballman via Phabricator via cfe-commits
aaron.ballman created this revision. It took me a while to track this down and I figured I'd save someone else the time. By default, CMake uses the 32-bit toolchain on Windows, even if generating a 64-bit solution. Given the size of Clang's code base, this can lead to quite a few link errors

r303851 - [CodeGen] Pessimize aliasing for member unions (and may-alias) objects

2017-05-25 Thread Krzysztof Parzyszek via cfe-commits
Author: kparzysz Date: Thu May 25 07:55:47 2017 New Revision: 303851 URL: http://llvm.org/viewvc/llvm-project?rev=303851=rev Log: [CodeGen] Pessimize aliasing for member unions (and may-alias) objects Use the TBAA info of the omnipotent char for these objects. Differential Revision:

r303868 - [coroutines] Diagnose when promise types fail to declare either return_void or return_value.

2017-05-25 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Thu May 25 09:59:39 2017 New Revision: 303868 URL: http://llvm.org/viewvc/llvm-project?rev=303868=rev Log: [coroutines] Diagnose when promise types fail to declare either return_void or return_value. Summary: According to the PDTS it's perfectly legal to have a promise type

r303871 - Make git-clang-format python 3 compatible

2017-05-25 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Thu May 25 10:24:04 2017 New Revision: 303871 URL: http://llvm.org/viewvc/llvm-project?rev=303871=rev Log: Make git-clang-format python 3 compatible Summary: This patch attempts to make `git-clang-format` both python2 and python3 compatible. Currently it only works in

[clang-tools-extra] r303872 - Disable MSVC-Compat mode for two tests that use C++Operator Names

2017-05-25 Thread Erich Keane via cfe-commits
Author: erichkeane Date: Thu May 25 10:39:24 2017 New Revision: 303872 URL: http://llvm.org/viewvc/llvm-project?rev=303872=rev Log: Disable MSVC-Compat mode for two tests that use C++Operator Names MSVC doesn't support C++ operator names (using 'or' instead of ||, 'not' instead of '!', etc), so

[PATCH] D30837: [libcxx] Support for shared_ptr<T()>

2017-05-25 Thread Phabricator via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL303874: Add support for shared_ptr (authored by epilk). Changed prior to commit: https://reviews.llvm.org/D30837?vs=97313=100251#toc Repository: rL LLVM https://reviews.llvm.org/D30837 Files:

[libcxx] r303874 - Add support for shared_ptr

2017-05-25 Thread Erik Pilkington via cfe-commits
Author: epilk Date: Thu May 25 10:43:31 2017 New Revision: 303874 URL: http://llvm.org/viewvc/llvm-project?rev=303874=rev Log: Add support for shared_ptr Fixes PR27566. Differential revision: https://reviews.llvm.org/D30837 Added:

r303867 - [coroutines] Bump __cpp_coroutines version

2017-05-25 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Thu May 25 09:58:46 2017 New Revision: 303867 URL: http://llvm.org/viewvc/llvm-project?rev=303867=rev Log: [coroutines] Bump __cpp_coroutines version Summary: This patch is needed so that Libc++ can actually tess if Clang supports coroutines, instead of just paying lip

r303873 - Don't defer to the GCC driver for linking arm-baremetal

2017-05-25 Thread Jonathan Roelofs via cfe-commits
Author: jroelofs Date: Thu May 25 10:42:13 2017 New Revision: 303873 URL: http://llvm.org/viewvc/llvm-project?rev=303873=rev Log: Don't defer to the GCC driver for linking arm-baremetal Also comes with a cmake cache for building the runtime bits: $ cmake \

[PATCH] D33259: Don't defer to the GCC driver for linking arm-baremetal

2017-05-25 Thread Jonathan Roelofs via Phabricator via cfe-commits
jroelofs closed this revision. jroelofs added a comment. r303873 https://reviews.llvm.org/D33259 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D32592: [Analyzer] Iterator Checker - Part 1: Minimal Checker for a Simple Test Case

2017-05-25 Thread Balogh , Ádám via Phabricator via cfe-commits
baloghadamsoftware updated this revision to Diff 100239. baloghadamsoftware added a comment. Comments added and fixed. https://reviews.llvm.org/D32592 Files: include/clang/StaticAnalyzer/Checkers/Checkers.td lib/StaticAnalyzer/Checkers/CMakeLists.txt

r303861 - [AMDGPU] add __builtin_amdgcn_s_getpc

2017-05-25 Thread Tim Corringham via cfe-commits
Author: timcorringham Date: Thu May 25 09:16:11 2017 New Revision: 303861 URL: http://llvm.org/viewvc/llvm-project?rev=303861=rev Log: [AMDGPU] add __builtin_amdgcn_s_getpc Summary: Added the builtin corresponding to the s_getpc intrinsic added in llvm D32862 Subscribers: kzhuravl, wdng,

[PATCH] D33550: Make __wrap_iter constexpr

2017-05-25 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists created this revision. `__wrap_iter` is an internal libc++ class that is used as an iterator type when (for some reason) we don't want to use raw pointers as an iterator. It is the iterator type for `vector` and `string` (but not `array` - not sure why). If we used pointers, all

[PATCH] D33550: Make __wrap_iter constexpr

2017-05-25 Thread Marshall Clow via Phabricator via cfe-commits
mclow.lists added inline comments. Comment at: include/iterator:1409 -private: +// private: #if _LIBCPP_DEBUG_LEVEL >= 2 This is testing debris - making the constructors public for testing. https://reviews.llvm.org/D33550

[PATCH] D33328: [CodeGen] Pessimize aliasing for union members (and may-alias) objects

2017-05-25 Thread Krzysztof Parzyszek via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL303851: [CodeGen] Pessimize aliasing for member unions (and may-alias) objects (authored by kparzysz). Changed prior to commit: https://reviews.llvm.org/D33328?vs=100142=100232#toc Repository: rL

r303857 - [X86] Adding avx512_vpopcntdq feature set and its intrinsics

2017-05-25 Thread Oren Ben Simhon via cfe-commits
Author: orenb Date: Thu May 25 08:44:11 2017 New Revision: 303857 URL: http://llvm.org/viewvc/llvm-project?rev=303857=rev Log: [X86] Adding avx512_vpopcntdq feature set and its intrinsics AVX512_VPOPCNTDQ is a new feature set that was published by Intel. The patch represents the Clang side of

[PATCH] D33170: [X86] Adding avx512_vpopcntdq feature set and its intrinsics

2017-05-25 Thread Phabricator via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL303857: [X86] Adding avx512_vpopcntdq feature set and its intrinsics (authored by orenb). Changed prior to commit: https://reviews.llvm.org/D33170?vs=99685=100236#toc Repository: rL LLVM

[libcxx] r303862 - Last commit included some extra constexpr; remove them

2017-05-25 Thread Marshall Clow via cfe-commits
Author: marshall Date: Thu May 25 09:20:26 2017 New Revision: 303862 URL: http://llvm.org/viewvc/llvm-project?rev=303862=rev Log: Last commit included some extra constexpr; remove them Modified: libcxx/trunk/include/algorithm Modified: libcxx/trunk/include/algorithm URL:

[libcxx] r303856 - Make for_each_n only avaliable on C++17

2017-05-25 Thread Marshall Clow via cfe-commits
Author: marshall Date: Thu May 25 08:40:57 2017 New Revision: 303856 URL: http://llvm.org/viewvc/llvm-project?rev=303856=rev Log: Make for_each_n only avaliable on C++17 Modified: libcxx/trunk/include/algorithm Modified: libcxx/trunk/include/algorithm URL:

[libcxx] r303966 - Workaround debug info bug in Clangs coroutine implementation

2017-05-25 Thread Eric Fiselier via cfe-commits
Author: ericwf Date: Thu May 25 23:09:38 2017 New Revision: 303966 URL: http://llvm.org/viewvc/llvm-project?rev=303966=rev Log: Workaround debug info bug in Clangs coroutine implementation Modified:

[PATCH] D33082: Fix Libc++ build with MinGW64

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D33082#765282, @bcraig wrote: > I think that we generally shouldn't be giving functions names that are > already claimed elsewhere (like mbsnrtowcs and wcsnrtombs). It is my opinion > that these should always be qualified as __libcpp_*

[PATCH] D33082: Fix Libc++ build with MinGW64

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 100358. EricWF added a comment. - remove `asprintf` declaration and definition entirely. It's not used anywhere within libc++. https://reviews.llvm.org/D33082 Files: include/__config include/__locale include/locale include/stdio.h

[PATCH] D33080: [Libc++] Use #pragma push_macro/pop_macro to better handle min/max on Windows

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 100361. EricWF added a comment. - Fix whitespace in `__config`. @compnerd Any final thoughts? https://reviews.llvm.org/D33080 Files: include/__bit_reference include/__config include/__hash_table include/__mutex_base include/__split_buffer

[PATCH] D33082: Fix Libc++ build with MinGW64

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 100263. EricWF added a comment. Add `_LIBCPP_MSVCRT_LIKE` and use it to replace `_LIBCPP_WIN32API` where appropriate. https://reviews.llvm.org/D33082 Files: include/__config include/__locale include/locale include/stdio.h

[PATCH] D33080: [Libc++] Use #pragma push_macro/pop_macro to better handle min/max on Windows

2017-05-25 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D33080#754442, @compnerd wrote: > I think that we should sink the `min`/`max` checks into `__undef_macros`. I > don't like the idea of littering that check everywhere. I would much rather litter at the cost of the implementation than

  1   2   >