r341710 - Make -Watomic-alignment say whether the atomic operation was oversized

2018-09-07 Thread Richard Smith via cfe-commits
Author: rsmith Date: Fri Sep 7 14:24:27 2018 New Revision: 341710 URL: http://llvm.org/viewvc/llvm-project?rev=341710&view=rev Log: Make -Watomic-alignment say whether the atomic operation was oversized or misaligned. Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td cfe/tru

r341734 - Do not use optimized atomic libcalls for misaligned atomics.

2018-09-07 Thread Richard Smith via cfe-commits
Author: rsmith Date: Fri Sep 7 16:57:54 2018 New Revision: 341734 URL: http://llvm.org/viewvc/llvm-project?rev=341734&view=rev Log: Do not use optimized atomic libcalls for misaligned atomics. Summary: The optimized (__atomic_foo_) libcalls assume that the atomic object is properly aligned, so s

r341775 - Part of PR33222: defer enforcing return type mismatch for dependent

2018-09-09 Thread Richard Smith via cfe-commits
Author: rsmith Date: Sun Sep 9 22:32:13 2018 New Revision: 341775 URL: http://llvm.org/viewvc/llvm-project?rev=341775&view=rev Log: Part of PR33222: defer enforcing return type mismatch for dependent friend function declarations of class templates. Modified: cfe/trunk/include/clang/Sema/Sema

r341778 - PR33222: Require the declared return type not the actual return type to

2018-09-09 Thread Richard Smith via cfe-commits
Author: rsmith Date: Sun Sep 9 23:35:32 2018 New Revision: 341778 URL: http://llvm.org/viewvc/llvm-project?rev=341778&view=rev Log: PR33222: Require the declared return type not the actual return type to match when checking for redeclaration of a function template. This properly handles differen

r341858 - Enhance -Wc++14-compat for class template argument deduction to list the

2018-09-10 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Sep 10 13:31:03 2018 New Revision: 341858 URL: http://llvm.org/viewvc/llvm-project?rev=341858&view=rev Log: Enhance -Wc++14-compat for class template argument deduction to list the deduced type (if known). Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td

r342017 - Fix tracking of merged definitions when the merge target is also merged

2018-09-11 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Sep 11 19:13:46 2018 New Revision: 342017 URL: http://llvm.org/viewvc/llvm-project?rev=342017&view=rev Log: Fix tracking of merged definitions when the merge target is also merged into something else. Added: cfe/trunk/test/Modules/merge-template-pattern-visibility-2.c

r342018 - Consistently create a new declaration when merging a pre-existing but

2018-09-11 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Sep 11 19:13:47 2018 New Revision: 342018 URL: http://llvm.org/viewvc/llvm-project?rev=342018&view=rev Log: Consistently create a new declaration when merging a pre-existing but hidden definition with a would-be-parsed redefinition. This permits a bunch of cleanups. In pa

r342019 - Track definition merging on the canonical declaration even when local

2018-09-11 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Sep 11 19:13:48 2018 New Revision: 342019 URL: http://llvm.org/viewvc/llvm-project?rev=342019&view=rev Log: Track definition merging on the canonical declaration even when local submodule visibility is disabled. Attempting to pick a specific declaration to make visible wh

r342020 - Revert r342019, "Track definition merging on the canonical declaration

2018-09-11 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Sep 11 19:28:14 2018 New Revision: 342020 URL: http://llvm.org/viewvc/llvm-project?rev=342020&view=rev Log: Revert r342019, "Track definition merging on the canonical declaration even when [...]" Further testing has revealed that this causes build breaks during explicit m

r342096 - When we leave a module header, make that header visible in its

2018-09-12 Thread Richard Smith via cfe-commits
Author: rsmith Date: Wed Sep 12 16:09:23 2018 New Revision: 342096 URL: http://llvm.org/viewvc/llvm-project?rev=342096&view=rev Log: When we leave a module header, make that header visible in its includer's context, even if its overall module is unavailable. Added: cfe/trunk/test/Modules/Inpu

r342097 - Track definition merging on the canonical declaration even when local

2018-09-12 Thread Richard Smith via cfe-commits
Author: rsmith Date: Wed Sep 12 16:37:00 2018 New Revision: 342097 URL: http://llvm.org/viewvc/llvm-project?rev=342097&view=rev Log: Track definition merging on the canonical declaration even when local submodule visibility is disabled. Attempting to pick a specific declaration to make visible wh

r342098 - Remove dead code made unnecessary by r342018.

2018-09-12 Thread Richard Smith via cfe-commits
Author: rsmith Date: Wed Sep 12 16:37:58 2018 New Revision: 342098 URL: http://llvm.org/viewvc/llvm-project?rev=342098&view=rev Log: Remove dead code made unnecessary by r342018. Modified: cfe/trunk/lib/Sema/SemaLookup.cpp Modified: cfe/trunk/lib/Sema/SemaLookup.cpp URL: http://llvm.org/vie

r342177 - Diagnose likely typos in #include directives.

2018-09-13 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Sep 13 14:10:08 2018 New Revision: 342177 URL: http://llvm.org/viewvc/llvm-project?rev=342177&view=rev Log: Diagnose likely typos in #include directives. Summary: When someone writes #include "" or #include " some_file " the compiler returns "file not fuond..." wi

r342192 - Fix crash on call to __builtin_memcpy with a null pointer to an

2018-09-13 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Sep 13 15:47:33 2018 New Revision: 342192 URL: http://llvm.org/viewvc/llvm-project?rev=342192&view=rev Log: Fix crash on call to __builtin_memcpy with a null pointer to an incomplete type. Also improve the diagnostics for similar situations. Modified: cfe/trunk/inclu

r337481 - Fix template argument deduction when a parameter pack has a value

2018-07-19 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Jul 19 12:00:37 2018 New Revision: 337481 URL: http://llvm.org/viewvc/llvm-project?rev=337481&view=rev Log: Fix template argument deduction when a parameter pack has a value provided by an outer template. We made the incorrect assumption in various places that the only wa

r337483 - Fix failing testcase to actually be valid.

2018-07-19 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Jul 19 12:05:13 2018 New Revision: 337483 URL: http://llvm.org/viewvc/llvm-project?rev=337483&view=rev Log: Fix failing testcase to actually be valid. Modified: cfe/trunk/test/SemaTemplate/pack-deduction.cpp Modified: cfe/trunk/test/SemaTemplate/pack-deduction.cpp UR

r337498 - When we choose to use zeroinitializer for a trailing portion of an array

2018-07-19 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Jul 19 14:38:56 2018 New Revision: 337498 URL: http://llvm.org/viewvc/llvm-project?rev=337498&view=rev Log: When we choose to use zeroinitializer for a trailing portion of an array constant, don't convert the rest into a packed struct. If an array constant has a large non

r337508 - Fix typo causing assert in self-host.

2018-07-19 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Jul 19 16:24:41 2018 New Revision: 337508 URL: http://llvm.org/viewvc/llvm-project?rev=337508&view=rev Log: Fix typo causing assert in self-host. Modified: cfe/trunk/lib/CodeGen/CGExprConstant.cpp cfe/trunk/test/CodeGen/init.c Modified: cfe/trunk/lib/CodeGen/CGEx

Re: r337540 - Sema: Fix explicit address space cast in C++

2018-07-20 Thread Richard Smith via cfe-commits
On Fri, 20 Jul 2018 at 04:38, Yaxun Liu via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: yaxunl > Date: Fri Jul 20 04:32:51 2018 > New Revision: 337540 > > URL: http://llvm.org/viewvc/llvm-project?rev=337540&view=rev > Log: > Sema: Fix explicit address space cast in C++ > > Currently

Re: r337540 - Sema: Fix explicit address space cast in C++

2018-07-20 Thread Richard Smith via cfe-commits
On Fri, 20 Jul 2018 at 12:00, Richard Smith wrote: > On Fri, 20 Jul 2018 at 04:38, Yaxun Liu via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Author: yaxunl >> Date: Fri Jul 20 04:32:51 2018 >> New Revision: 337540 >> >> URL: http://llv

r337627 - Fold dangling-field warning into general initialization lifetime checks.

2018-07-20 Thread Richard Smith via cfe-commits
Author: rsmith Date: Fri Jul 20 15:25:55 2018 New Revision: 337627 URL: http://llvm.org/viewvc/llvm-project?rev=337627&view=rev Log: Fold dangling-field warning into general initialization lifetime checks. Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td cfe/trunk/lib/Sema/S

r337653 - PR38257: don't perform ADL when instantiating a unary & operator that turns out

2018-07-21 Thread Richard Smith via cfe-commits
Author: rsmith Date: Sat Jul 21 22:21:47 2018 New Revision: 337653 URL: http://llvm.org/viewvc/llvm-project?rev=337653&view=rev Log: PR38257: don't perform ADL when instantiating a unary & operator that turns out to be forming a pointer-to-member. Added: cfe/trunk/test/SemaTemplate/argument-d

r337726 - Fold dangling-field warning into general initialization lifetime checks.

2018-07-23 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Jul 23 11:50:26 2018 New Revision: 337726 URL: http://llvm.org/viewvc/llvm-project?rev=337726&view=rev Log: Fold dangling-field warning into general initialization lifetime checks. This reinstates r337627, reverted in r337671, with a fix to correctly handle the lvalueness

r337728 - Separate out the initialization kind for a statement expression result

2018-07-23 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Jul 23 12:19:08 2018 New Revision: 337728 URL: http://llvm.org/viewvc/llvm-project?rev=337728&view=rev Log: Separate out the initialization kind for a statement expression result from that for a return value. No functionality change intended: I don't believe any of the di

Re: r337433 - [clang]: Add support for "-fno-delete-null-pointer-checks"

2018-07-23 Thread Richard Smith via cfe-commits
Hi Manoj, Please can you add better test coverage that we don't emit 'nonnull' annotations for reference parameters / return values? At the moment, the only such test coverage has been added to test files that are testing unrelated things, which seems inappropriate. A separate test file that tests

Re: r337627 - Fold dangling-field warning into general initialization lifetime checks.

2018-07-23 Thread Richard Smith via cfe-commits
; with the stack >> address of parameter 'x' [-Wdangling-field] >> >> I'll revert the change to unbreak our integrate. >> >> >> On Sat, Jul 21, 2018 at 12:31 AM Richard Smith via cfe-commits < >> cfe-commits@lists.llvm.org> wrote: >>

r337743 - Fold -Wreturn-stack-address into general initialization lifetime

2018-07-23 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Jul 23 14:21:22 2018 New Revision: 337743 URL: http://llvm.org/viewvc/llvm-project?rev=337743&view=rev Log: Fold -Wreturn-stack-address into general initialization lifetime checking. Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td cfe/trunk/lib/Sema

r337744 - Do not try to perform lifetime-extension through conditional

2018-07-23 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Jul 23 14:21:24 2018 New Revision: 337744 URL: http://llvm.org/viewvc/llvm-project?rev=337744&view=rev Log: Do not try to perform lifetime-extension through conditional expressions. CodeGen can't cope with that yet. Instead, produce a "not supported" warning for now and d

r337767 - Support lifetime-extension of conditional temporaries.

2018-07-23 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Jul 23 15:56:45 2018 New Revision: 337767 URL: http://llvm.org/viewvc/llvm-project?rev=337767&view=rev Log: Support lifetime-extension of conditional temporaries. Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td cfe/trunk/lib/CodeGen/CGCleanup.cpp

r337790 - Warn if a local variable's initializer retains a pointer/reference to a

2018-07-23 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Jul 23 17:55:08 2018 New Revision: 337790 URL: http://llvm.org/viewvc/llvm-project?rev=337790&view=rev Log: Warn if a local variable's initializer retains a pointer/reference to a non-lifetime-extended temporary object. Added: cfe/trunk/test/SemaCXX/warn-dangling-loca

r337792 - Add missing testcase update for r337790.

2018-07-23 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Jul 23 18:23:36 2018 New Revision: 337792 URL: http://llvm.org/viewvc/llvm-project?rev=337792&view=rev Log: Add missing testcase update for r337790. Modified: cfe/trunk/test/SemaCXX/constant-expression-cxx11.cpp Modified: cfe/trunk/test/SemaCXX/constant-expression-cx

r337857 - Don't lifetime-extend or track lifetime problems through the LHS of '->*'.

2018-07-24 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Jul 24 14:18:30 2018 New Revision: 337857 URL: http://llvm.org/viewvc/llvm-project?rev=337857&view=rev Log: Don't lifetime-extend or track lifetime problems through the LHS of '->*'. Fixes a false-positive warning found by selfhost. Modified: cfe/trunk/lib/AST/Expr.c

r338056 - Refactor checking of switch conditions and case values.

2018-07-26 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Jul 26 11:41:30 2018 New Revision: 338056 URL: http://llvm.org/viewvc/llvm-project?rev=338056&view=rev Log: Refactor checking of switch conditions and case values. Check each case value in turn while parsing it, performing the conversion to the switch type within the cont

Re: r337470 - [Sema] Add a new warning, -Wmemset-transposed-args

2018-07-26 Thread Richard Smith via cfe-commits
Other than the (fixed) ffmpeg false positive, I see this firing in three places. One of them is in the libc tests for memset and bzero, where the 0 argument is intentional. One of them is here: https://github.com/apache/xerces-c/blob/trunk/src/xercesc/util/XMLUTF16Transcoder.cpp#L114 (note that th

Re: r337470 - [Sema] Add a new warning, -Wmemset-transposed-args

2018-07-26 Thread Richard Smith via cfe-commits
On Thu, 26 Jul 2018 at 13:14, Erik Pilkington via cfe-commits < cfe-commits@lists.llvm.org> wrote: > > > On 7/26/18 12:52 PM, Richard Smith wrote: > > Other than the (fixed) ffmpeg false positive, I see this firing in three > places. > > One of them is in the l

Re: r337470 - [Sema] Add a new warning, -Wmemset-transposed-args

2018-07-26 Thread Richard Smith via cfe-commits
On Thu, 26 Jul 2018 at 13:22, Arthur O'Dwyer via cfe-commits < cfe-commits@lists.llvm.org> wrote: > On Thu, Jul 26, 2018 at 12:52 PM, Richard Smith > wrote: > >> Other than the (fixed) ffmpeg false positive, I see this firing in three >> places. >> >>

r338135 - Add missing temporary materialization conversion on left-hand side of .

2018-07-27 Thread Richard Smith via cfe-commits
Author: rsmith Date: Fri Jul 27 10:13:18 2018 New Revision: 338135 URL: http://llvm.org/viewvc/llvm-project?rev=338135&view=rev Log: Add missing temporary materialization conversion on left-hand side of . in some member function calls. Specifically, when calling a conversion function, we would fa

r338141 - Fix typos in comment.

2018-07-27 Thread Richard Smith via cfe-commits
Author: rsmith Date: Fri Jul 27 11:06:54 2018 New Revision: 338141 URL: http://llvm.org/viewvc/llvm-project?rev=338141&view=rev Log: Fix typos in comment. Modified: cfe/trunk/include/clang/AST/TypeLoc.h Modified: cfe/trunk/include/clang/AST/TypeLoc.h URL: http://llvm.org/viewvc/llvm-project

r338230 - PR38355 Prevent infinite recursion when checking initializer lifetime if

2018-07-30 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Jul 30 00:19:54 2018 New Revision: 338230 URL: http://llvm.org/viewvc/llvm-project?rev=338230&view=rev Log: PR38355 Prevent infinite recursion when checking initializer lifetime if an initializer is self-referential. Modified: cfe/trunk/lib/Sema/SemaInit.cpp cfe/t

r338282 - Delete some unreachable AST printing code.

2018-07-30 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Jul 30 11:05:19 2018 New Revision: 338282 URL: http://llvm.org/viewvc/llvm-project?rev=338282&view=rev Log: Delete some unreachable AST printing code. Modified: cfe/trunk/lib/AST/TypePrinter.cpp Modified: cfe/trunk/lib/AST/TypePrinter.cpp URL: http://llvm.org/viewvc

r338343 - [coroutines] Fix handling of dependent co_await in StmtProfiler.

2018-07-30 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Jul 30 17:47:41 2018 New Revision: 338343 URL: http://llvm.org/viewvc/llvm-project?rev=338343&view=rev Log: [coroutines] Fix handling of dependent co_await in StmtProfiler. Fix "Invalid operator call kind" error (llvm_unreachable) in DecodeOperatorCall when profiling a de

r338438 - [serialization] PR34728: Don't assume that only a suffix of template

2018-07-31 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Jul 31 14:01:53 2018 New Revision: 338438 URL: http://llvm.org/viewvc/llvm-project?rev=338438&view=rev Log: [serialization] PR34728: Don't assume that only a suffix of template parameters can have default arguments. At least for function templates and class template parti

r338455 - [constexpr] Support for constant evaluation of __builtin_memcpy and

2018-07-31 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Jul 31 16:35:09 2018 New Revision: 338455 URL: http://llvm.org/viewvc/llvm-project?rev=338455&view=rev Log: [constexpr] Support for constant evaluation of __builtin_memcpy and __builtin_memmove (in non-type-punning cases). This is intended to permit libc++ to make std::co

r338464 - [P0936R0] add [[clang::lifetimebound]] attribute

2018-07-31 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Jul 31 17:33:25 2018 New Revision: 338464 URL: http://llvm.org/viewvc/llvm-project?rev=338464&view=rev Log: [P0936R0] add [[clang::lifetimebound]] attribute This patch adds support for a new attribute, [[clang::lifetimebound]], that indicates that the lifetime of a functi

r338467 - Avoid exposing name for range-based for '__range' variables in lifetime warnings.

2018-07-31 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Jul 31 18:03:33 2018 New Revision: 338467 URL: http://llvm.org/viewvc/llvm-project?rev=338467&view=rev Log: Avoid exposing name for range-based for '__range' variables in lifetime warnings. Modified: cfe/trunk/include/clang/Basic/DiagnosticSemaKinds.td cfe/trunk/

r338473 - Speculative fix for buildbot failures after r338464.

2018-07-31 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Jul 31 18:57:49 2018 New Revision: 338473 URL: http://llvm.org/viewvc/llvm-project?rev=338473&view=rev Log: Speculative fix for buildbot failures after r338464. Modified: cfe/trunk/lib/Sema/SemaDecl.cpp Modified: cfe/trunk/lib/Sema/SemaDecl.cpp URL: http://llvm.org/

r338478 - Work around GCC miscompile exposed by r338464.

2018-07-31 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Jul 31 19:27:18 2018 New Revision: 338478 URL: http://llvm.org/viewvc/llvm-project?rev=338478&view=rev Log: Work around GCC miscompile exposed by r338464. See gcc.gnu.org/PR86769 for details of the bug. Modified: cfe/trunk/lib/Sema/SemaDecl.cpp Modified: cfe/trunk/l

Re: r338489 - [AST] CastExpr: BasePathSize is not large enough.

2018-08-01 Thread Richard Smith via cfe-commits
On Tue, 31 Jul 2018, 23:06 Roman Lebedev via cfe-commits, < cfe-commits@lists.llvm.org> wrote: > Author: lebedevri > Date: Tue Jul 31 23:06:16 2018 > New Revision: 338489 > > URL: http://llvm.org/viewvc/llvm-project?rev=338489&view=rev > Log: > [AST] CastExpr: BasePathSize is not large enough. > >

Re: [PATCH] D49922: [P0936R0] add [[clang::lifetimebound]] attribute

2018-08-02 Thread Richard Smith via cfe-commits
On Thu, 2 Aug 2018, 06:10 Martin Storsjö via Phabricator via cfe-commits, < cfe-commits@lists.llvm.org> wrote: > mstorsjo added a comment. > > This change made clang to start trigger failed asserts for me (although > they seem to not be reproducible with all compilers building clang), see > https:

r338766 - Fix assertion failure when emitting code for a merged lambda.

2018-08-02 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Aug 2 13:30:52 2018 New Revision: 338766 URL: http://llvm.org/viewvc/llvm-project?rev=338766&view=rev Log: Fix assertion failure when emitting code for a merged lambda. Modified: cfe/trunk/lib/AST/DeclCXX.cpp cfe/trunk/test/Modules/merge-lambdas.cpp Modified: cf

Re: r338749 - Work around more GCC miscompiles exposed by r338464.

2018-08-02 Thread Richard Smith via cfe-commits
(+Hans) +1 On Thu, 2 Aug 2018 at 11:37, Martin Storsjö via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Hans, > > I think this commit should be merged to the 7.0 release branch; the first > half of the GCC workaround made it in before the branch happened, but > there was another identical c

r338798 - [modules] Defer merging deduced return types.

2018-08-02 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Aug 2 18:00:01 2018 New Revision: 338798 URL: http://llvm.org/viewvc/llvm-project?rev=338798&view=rev Log: [modules] Defer merging deduced return types. We can't read a deduced return type until we are sure that the types referred to by it are not in the middle of being

r338941 - [constexpr] Support for constant evaluation of __builtin_memcpy and

2018-08-03 Thread Richard Smith via cfe-commits
Author: rsmith Date: Fri Aug 3 17:57:17 2018 New Revision: 338941 URL: http://llvm.org/viewvc/llvm-project?rev=338941&view=rev Log: [constexpr] Support for constant evaluation of __builtin_memcpy and __builtin_memmove (in non-type-punning cases). This is intended to permit libc++ to make std::co

Re: r338455 - [constexpr] Support for constant evaluation of __builtin_memcpy and

2018-08-03 Thread Richard Smith via cfe-commits
lude/llvm/ADT/SmallVector.h:178: const_reference > > llvm::SmallVectorTemplateCommon > void>::back() const [T = clang::APValue::LValue > > PathEntry]: Assertion `!empty()' failed. > > > > On Wed, Aug 1, 2018 at 1:35 AM Richard Smith via cfe-commits > > wrote

r338942 - [www] Update cxx_status and cxx_dr_status now that Clang 7 has branched.

2018-08-03 Thread Richard Smith via cfe-commits
Author: rsmith Date: Fri Aug 3 18:02:00 2018 New Revision: 338942 URL: http://llvm.org/viewvc/llvm-project?rev=338942&view=rev Log: [www] Update cxx_status and cxx_dr_status now that Clang 7 has branched. Modified: cfe/trunk/www/cxx_dr_status.html cfe/trunk/www/cxx_status.html cfe/tr

r338945 - Avoid creating conditional cleanup blocks that contain only @llvm.lifetime.end calls

2018-08-03 Thread Richard Smith via cfe-commits
Author: rsmith Date: Fri Aug 3 18:25:06 2018 New Revision: 338945 URL: http://llvm.org/viewvc/llvm-project?rev=338945&view=rev Log: Avoid creating conditional cleanup blocks that contain only @llvm.lifetime.end calls When a non-extended temporary object is created in a conditional branch, the l

r324537 - PR36055: fix computation of *-dependence in nested initializer lists.

2018-02-07 Thread Richard Smith via cfe-commits
Author: rsmith Date: Wed Feb 7 14:25:16 2018 New Revision: 324537 URL: http://llvm.org/viewvc/llvm-project?rev=324537&view=rev Log: PR36055: fix computation of *-dependence in nested initializer lists. When we synthesize an implicit inner initializer list when analyzing an outer initializer list

[libcxxabi] r324542 - Fix compilation in C++17 mode.

2018-02-07 Thread Richard Smith via cfe-commits
Author: rsmith Date: Wed Feb 7 15:23:23 2018 New Revision: 324542 URL: http://llvm.org/viewvc/llvm-project?rev=324542&view=rev Log: Fix compilation in C++17 mode. C++17 removes `std::unexpected_handler`, but libc++abi needs it to define `__cxa_exception`. When building against libc++, this is ea

r324695 - [modules] Fix incorrect diagnostic mapping computation when a module changes

2018-02-08 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Feb 8 17:15:13 2018 New Revision: 324695 URL: http://llvm.org/viewvc/llvm-project?rev=324695&view=rev Log: [modules] Fix incorrect diagnostic mapping computation when a module changes diagnostic settings using _Pragma within a macro. The AST writer had previously been as

Re: r325081 - Implement function attribute artificial

2018-02-13 Thread Richard Smith via cfe-commits
On 13 February 2018 at 16:14, Erich Keane via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: erichkeane > Date: Tue Feb 13 16:14:07 2018 > New Revision: 325081 > > URL: http://llvm.org/viewvc/llvm-project?rev=325081&view=rev > Log: > Implement function attribute artificial > > Added su

r325095 - Fix a couple of places where we assumed that non-type template parameters are always rvalues.

2018-02-13 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Feb 13 18:07:53 2018 New Revision: 325095 URL: http://llvm.org/viewvc/llvm-project?rev=325095&view=rev Log: Fix a couple of places where we assumed that non-type template parameters are always rvalues. Added: cfe/trunk/test/SemaTemplate/sizeof-pack.cpp Modified:

r325195 - Add missing definition for class static after r325193.

2018-02-14 Thread Richard Smith via cfe-commits
Author: rsmith Date: Wed Feb 14 17:01:06 2018 New Revision: 325195 URL: http://llvm.org/viewvc/llvm-project?rev=325195&view=rev Log: Add missing definition for class static after r325193. Modified: cfe/trunk/lib/Basic/Targets/AMDGPU.cpp Modified: cfe/trunk/lib/Basic/Targets/AMDGPU.cpp URL:

r325475 - [cxx_dr_status] Tests for CWG issues 641-687.

2018-02-19 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Feb 19 01:05:48 2018 New Revision: 325475 URL: http://llvm.org/viewvc/llvm-project?rev=325475&view=rev Log: [cxx_dr_status] Tests for CWG issues 641-687. Modified: cfe/trunk/test/CXX/drs/dr6xx.cpp cfe/trunk/www/cxx_dr_status.html Modified: cfe/trunk/test/CXX/drs/

r325540 - Fix test failure on target where size_t is long long.

2018-02-19 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Feb 19 14:50:50 2018 New Revision: 325540 URL: http://llvm.org/viewvc/llvm-project?rev=325540&view=rev Log: Fix test failure on target where size_t is long long. Modified: cfe/trunk/test/CXX/drs/dr6xx.cpp Modified: cfe/trunk/test/CXX/drs/dr6xx.cpp URL: http://llvm.o

Re: r325475 - [cxx_dr_status] Tests for CWG issues 641-687.

2018-02-19 Thread Richard Smith via cfe-commits
hecks-win/builds/8006 > > Failing Tests (1): > Clang :: CXX/drs/dr6xx.cpp > > Please have a look? > > Thanks > > Galina > > > > On Mon, Feb 19, 2018 at 1:05 AM, Richard Smith via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Auth

r325545 - Fix some -Wexceptions false positives.

2018-02-19 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Feb 19 18:32:30 2018 New Revision: 325545 URL: http://llvm.org/viewvc/llvm-project?rev=325545&view=rev Log: Fix some -Wexceptions false positives. Reimplement the "noexcept function actually throws" warning to properly handle nested try-blocks. In passing, change 'throw;'

r325640 - When multiple sanitizers are enabled (ubsan + something else), use all relevant blacklists.

2018-02-20 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Feb 20 15:17:41 2018 New Revision: 325640 URL: http://llvm.org/viewvc/llvm-project?rev=325640&view=rev Log: When multiple sanitizers are enabled (ubsan + something else), use all relevant blacklists. Ideally, we'd only use the ubsan blacklist for ubsan sanitizers, and on

r325646 - Fix assert when template argument deduction's original call arg checking triggers class template instantiation.

2018-02-20 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Feb 20 15:47:12 2018 New Revision: 325646 URL: http://llvm.org/viewvc/llvm-project?rev=325646&view=rev Log: Fix assert when template argument deduction's original call arg checking triggers class template instantiation. Added: cfe/trunk/test/SemaTemplate/temp_arg_pac

r325663 - In C++14 onwards, it is permitted to read mutable members in constant

2018-02-20 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue Feb 20 19:38:30 2018 New Revision: 325663 URL: http://llvm.org/viewvc/llvm-project?rev=325663&view=rev Log: In C++14 onwards, it is permitted to read mutable members in constant expressions, if their lifetime began during the evaluation of the expression. This is technica

r325854 - Add a test to ensure we don't permit mutable access on temporaries outside the evaluation in which they were created.

2018-02-22 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Feb 22 18:03:26 2018 New Revision: 325854 URL: http://llvm.org/viewvc/llvm-project?rev=325854&view=rev Log: Add a test to ensure we don't permit mutable access on temporaries outside the evaluation in which they were created. Modified: cfe/trunk/test/SemaCXX/constant

r325998 - Add another test for PR36157.

2018-02-23 Thread Richard Smith via cfe-commits
Author: rsmith Date: Fri Feb 23 16:00:58 2018 New Revision: 325998 URL: http://llvm.org/viewvc/llvm-project?rev=325998&view=rev Log: Add another test for PR36157. Modified: cfe/trunk/test/Sema/vla.c Modified: cfe/trunk/test/Sema/vla.c URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/test/

Re: [PATCH] D33424: Lexer: allow imaginary constants in GNU mode (only).

2017-05-24 Thread Richard Smith via cfe-commits
On 24 May 2017 at 14:35, Marshall Clow via Phabricator via cfe-commits < cfe-commits@lists.llvm.org> wrote: > mclow.lists added a comment. > > This broke a libc++ test. The following is expected to fail to compile: > > #include > #include > > int main() > { > std::complex foo = 1

Re: [PATCH] D33424: Lexer: allow imaginary constants in GNU mode (only).

2017-05-24 Thread Richard Smith via cfe-commits
On 24 May 2017 3:19 pm, "Tim Northover" wrote: On 24 May 2017 at 15:06, Richard Smith wrote: > I think this is expected. Clang has an extension where it treats 1.0if as a > _Complex float if no operator""if is available; Since it's breaking some bots, I've r

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&view=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 reorde

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&view=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

Re: [PATCH] D33467: Fix LLVM build errors if necent build of GCC 7 is used

2017-05-26 Thread Richard Smith via cfe-commits
This definitely looks like a GCC bug. On 26 May 2017 1:34 am, "David Abdurachmanov via Phabricator via cfe-commits" wrote: davidlt added a comment. This happens with recent GCC 7.1.1 (updated yesterday) and if compiled in C++1z mode. FAILED: /home/davidlt/root_patch_check/a/slc7_ppc64le_gcc7

Re: [PATCH] D33424: Lexer: allow imaginary constants in GNU mode (only).

2017-05-26 Thread Richard Smith via cfe-commits
On 26 May 2017 at 10:34, Tim Northover via cfe-commits < cfe-commits@lists.llvm.org> wrote: > On 24 May 2017 at 17:54, Richard Smith wrote: > > Yikes :-( Maybe libc++ *should* have that extension then. It sounds like > > we'll silently get the wrong value for a

Re: [PATCH] D33625: [coroutines] Diagnose invalid result types for `await_resume` and `await_suspend` and add missing conversions.

2017-05-28 Thread Richard Smith via cfe-commits
On 28 May 2017 at 12:53, Eric Fiselier via Phabricator < revi...@reviews.llvm.org> wrote: > EricWF marked an inline comment as done. > EricWF added inline comments. > > > > Comment at: lib/Sema/SemaCoroutine.cpp:393 > +// - await-suspend is the expression e.await_suspend(h),

r304183 - [modules] When we #include a local submodule header that we've already built,

2017-05-29 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon May 29 21:03:19 2017 New Revision: 304183 URL: http://llvm.org/viewvc/llvm-project?rev=304183&view=rev Log: [modules] When we #include a local submodule header that we've already built, and it has an include guard, produce callbacks for a module import, not for a skipped n

r304190 - Diagnose attempts to build a preprocessed module that defines an unavailable submodule.

2017-05-29 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue May 30 00:22:59 2017 New Revision: 304190 URL: http://llvm.org/viewvc/llvm-project?rev=304190&view=rev Log: Diagnose attempts to build a preprocessed module that defines an unavailable submodule. The errors we would otherwise get are incomprehensible, as we would enter t

Re: r304207 - Allow for unfinished #if blocks in preambles

2017-05-30 Thread Richard Smith via cfe-commits
On 30 May 2017 at 04:54, Erik Verbruggen via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: erikjv > Date: Tue May 30 06:54:55 2017 > New Revision: 304207 > > URL: http://llvm.org/viewvc/llvm-project?rev=304207&view=rev > Log: > Allow for unfinished #if blocks in preambles > > Previous

r304237 - Add an explicit -std= to test to unbreak on PS4 targets.

2017-05-30 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue May 30 15:13:34 2017 New Revision: 304237 URL: http://llvm.org/viewvc/llvm-project?rev=304237&view=rev Log: Add an explicit -std= to test to unbreak on PS4 targets. Modified: cfe/trunk/test/Modules/preprocess-unavailable.cpp Modified: cfe/trunk/test/Modules/preproces

Re: r304190 - Diagnose attempts to build a preprocessed module that defines an unavailable submodule.

2017-05-30 Thread Richard Smith via cfe-commits
ted?) > Thanks > > Galina > > > > On Mon, May 29, 2017 at 10:22 PM, Richard Smith via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Author: rsmith >> Date: Tue May 30 00:22:59 2017 >> New Revision: 304190 >> >> URL: htt

r304253 - [modules] Minor documentation clarification for behavior of requires-declaration.

2017-05-30 Thread Richard Smith via cfe-commits
Author: rsmith Date: Tue May 30 18:05:23 2017 New Revision: 304253 URL: http://llvm.org/viewvc/llvm-project?rev=304253&view=rev Log: [modules] Minor documentation clarification for behavior of requires-declaration. Modified: cfe/trunk/docs/Modules.rst Modified: cfe/trunk/docs/Modules.rst UR

r304346 - [modules] When compiling a preprocessed module map, look for headers relative

2017-05-31 Thread Richard Smith via cfe-commits
Author: rsmith Date: Wed May 31 15:56:55 2017 New Revision: 304346 URL: http://llvm.org/viewvc/llvm-project?rev=304346&view=rev Log: [modules] When compiling a preprocessed module map, look for headers relative to the original module map. Also use the path and name of the original module map when

r304376 - PR33232: implement support for MSVC's __is_trivially_destructible trait.

2017-05-31 Thread Richard Smith via cfe-commits
Author: rsmith Date: Wed May 31 19:28:16 2017 New Revision: 304376 URL: http://llvm.org/viewvc/llvm-project?rev=304376&view=rev Log: PR33232: implement support for MSVC's __is_trivially_destructible trait. Unlike the GCC-compatible __has_trivial_destructor trait, this one computes the right answe

Re: r304346 - [modules] When compiling a preprocessed module map, look for headers relative

2017-06-01 Thread Richard Smith via cfe-commits
ent. > They certainly did not arrive here. As I've mentioned before, I have not received any mail from any lab.llvm.org bots since early March. > Thanks > > Galina > > > On Wed, May 31, 2017 at 1:56 PM, Richard Smith via cfe-commits < > cfe-commits@lists.llvm.org>

r304464 - Escape filenames in module map line marker directives, to unbreak Windows build bots.

2017-06-01 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Jun 1 15:10:35 2017 New Revision: 304464 URL: http://llvm.org/viewvc/llvm-project?rev=304464&view=rev Log: Escape filenames in module map line marker directives, to unbreak Windows build bots. Modified: cfe/trunk/lib/Frontend/FrontendActions.cpp cfe/trunk/lib/Fr

Re: r304346 - [modules] When compiling a preprocessed module map, look for headers relative

2017-06-01 Thread Richard Smith via cfe-commits
On 1 June 2017 at 12:53, Richard Smith wrote: > On 1 June 2017 at 11:10, Galina Kistanova wrote: > >> Hello Richard, >> >> This commit broke tests on few of our builders: >> >> Failing Tests (2): >> Clang :: Modules/preprocess-module.cpp >

Re: [PATCH] D33424: Lexer: allow imaginary constants in GNU mode (only).

2017-06-01 Thread Richard Smith via cfe-commits
On 1 June 2017 at 14:36, Tim Northover wrote: > On 26 May 2017 at 11:29, Richard Smith wrote: > > If we generally think that distinction is a good thing, then (because > this > > is a conforming extension) consistency weakly suggests that it should > not be > > co

Re: r304376 - PR33232: implement support for MSVC's __is_trivially_destructible trait.

2017-06-01 Thread Richard Smith via cfe-commits
sting ones are (oddly) covered by __has_feature, and they can all be discovered through !__is_identifier, but __has_extension or __has_builtin seem like the right detection mechanism and neither of them works here. ;-( Thoughts? > /Eric > > On Wed, May 31, 2017 at 6:28 PM, Richard Smith v

r304506 - PR32848: There isn't necessarily a FileChanged or FileSkipped for every InclusionDirective callback.

2017-06-01 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Jun 1 20:05:44 2017 New Revision: 304506 URL: http://llvm.org/viewvc/llvm-project?rev=304506&view=rev Log: PR32848: There isn't necessarily a FileChanged or FileSkipped for every InclusionDirective callback. In particular, you don't get one if the inclusion directive en

r304515 - Support lazy stat'ing of files referenced by module maps.

2017-06-01 Thread Richard Smith via cfe-commits
Author: rsmith Date: Thu Jun 1 20:55:39 2017 New Revision: 304515 URL: http://llvm.org/viewvc/llvm-project?rev=304515&view=rev Log: Support lazy stat'ing of files referenced by module maps. This patch adds support for a `header` declaration in a module map to specify certain `stat` information (

Re: [PATCH] D33788: Return a canonical path from getClangResourcePath()

2017-06-02 Thread Richard Smith via cfe-commits
On 2 June 2017 at 11:39, Aaron Ballman via Phabricator via cfe-commits < cfe-commits@lists.llvm.org> wrote: > aaron.ballman added a comment. > > In https://reviews.llvm.org/D33788#771671, @bruno wrote: > > > > I'm unaware of any other API that canonicalizes the path, which is > what users of this

Re: [PATCH] D33788: Return a canonical path from getClangResourcePath()

2017-06-02 Thread Richard Smith via cfe-commits
On 2 June 2017 at 12:04, Richard Smith wrote: > On 2 June 2017 at 11:39, Aaron Ballman via Phabricator via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> aaron.ballman added a comment. >> >> In https://reviews.llvm.org/D33788#771671, @bruno wrote: >&

Re: [PATCH] D33788: Return a canonical path from getClangResourcePath()

2017-06-02 Thread Richard Smith via cfe-commits
On 2 June 2017 at 12:26, Aaron Ballman wrote: > On Fri, Jun 2, 2017 at 3:22 PM, Richard Smith > wrote: > > On 2 June 2017 at 12:04, Richard Smith wrote: > >> > >> On 2 June 2017 at 11:39, Aaron Ballman via Phabricator via cfe-commits > >> wrote: &g

Re: r304376 - PR33232: implement support for MSVC's __is_trivially_destructible trait.

2017-06-02 Thread Richard Smith via cfe-commits
st for things like that. It seems to > be the most consistent way. > Is there some problem with this? > > /Eric > > On Thu, Jun 1, 2017 at 6:46 PM, Richard Smith > wrote: > >> On 31 May 2017 at 17:41, Eric Fiselier wrote: >> >>> I'm assuming libc+

r304604 - Fix assertion failure if we can't deduce a template argument for a variable

2017-06-02 Thread Richard Smith via cfe-commits
Author: rsmith Date: Fri Jun 2 17:53:06 2017 New Revision: 304604 URL: http://llvm.org/viewvc/llvm-project?rev=304604&view=rev Log: Fix assertion failure if we can't deduce a template argument for a variable template partial specialization. In passing, fix the deduction-crash.cpp test to actuall

Re: r304663 - Fixed warning: enum constant in boolean context.

2017-06-03 Thread Richard Smith via cfe-commits
Can we get a testcase for this bug? Seems like we can't have any coverage for the case where IsArmArch is supposed to be false. On 3 Jun 2017 9:47 am, "Galina Kistanova via cfe-commits" < cfe-commits@lists.llvm.org> wrote: Author: gkistanova Date: Sat Jun 3 11:47:06 2017 New Revision: 304663 UR

r304726 - Rather than rejecting attempts to run preprocessor-only actions on AST files,

2017-06-05 Thread Richard Smith via cfe-commits
Author: rsmith Date: Mon Jun 5 13:10:11 2017 New Revision: 304726 URL: http://llvm.org/viewvc/llvm-project?rev=304726&view=rev Log: Rather than rejecting attempts to run preprocessor-only actions on AST files, replay the steps taken to create the AST file with the preprocessor-only action install

<    1   2   3   4   5   6   7   8   9   10   >