[PATCH] D41655: [clang-tidy] New check bugprone-unused-return-value

2018-01-12 Thread Jonas Toth via Phabricator via cfe-commits
JonasToth added inline comments. Comment at: clang-tidy/bugprone/UnusedReturnValueCheck.cpp:47 +"^::std::launder$|" +"^::std::unique_ptr<.*>::release$|" +"^::std::.*::allocate$|"

[PATCH] D41820: [coroutines] Pass coro func args to promise ctor

2018-01-12 Thread Eric Niebler via Phabricator via cfe-commits
eric_niebler added a comment. > Is this behavior specified somewhere? Or are we simply adding an extension to > Clang? It is not specified anywhere //yet// but Gor has promised a paper for Jacksonville. > If so I would really prefer to add my co_promise solution (but I need to > write a paper

[PATCH] D41746: Make std::get_temporary_buffer respect overaligned types when possible

2018-01-12 Thread Chris Kennelly via Phabricator via cfe-commits
ckennelly updated this revision to Diff 129698. Repository: rCXX libc++ https://reviews.llvm.org/D41746 Files: include/memory test/std/utilities/memory/temporary.buffer/overaligned.pass.cpp Index: test/std/utilities/memory/temporary.buffer/overaligned.pass.cpp

[PATCH] D41746: Make std::get_temporary_buffer respect overaligned types when possible

2018-01-12 Thread Chris Kennelly via Phabricator via cfe-commits
ckennelly marked 2 inline comments as done. ckennelly added a comment. In https://reviews.llvm.org/D41746#973941, @EricWF wrote: > This LGTM minus nits. > > Is there a LWG issue or paper that specifies this change? or is it just a > general bug fix? This is just a general bug fix. =

r322405 - Disable test for Windows to fix Windows buildbots.

2018-01-12 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jan 12 13:49:20 2018 New Revision: 322405 URL: http://llvm.org/viewvc/llvm-project?rev=322405&view=rev Log: Disable test for Windows to fix Windows buildbots. Modified: cfe/trunk/test/Modules/odr_hash-Friend.cpp Modified: cfe/trunk/test/Modules/odr_hash-Friend.cpp UR

r322406 - Allocate and access NormalCleanupDest with the natural alignment of i32.

2018-01-12 Thread John McCall via cfe-commits
Author: rjmccall Date: Fri Jan 12 14:07:01 2018 New Revision: 322406 URL: http://llvm.org/viewvc/llvm-project?rev=322406&view=rev Log: Allocate and access NormalCleanupDest with the natural alignment of i32. This alignment can be less than 4 on certain embedded targets, which may not even be able

[PATCH] D40569: Use default IR alignment for cleanup.dest.slot.

2018-01-12 Thread John McCall via Phabricator via cfe-commits
rjmccall accepted this revision. rjmccall added a comment. This revision is now accepted and ready to land. r322406 Repository: rC Clang https://reviews.llvm.org/D40569 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org

[PATCH] D42011: [DWARFv5] Enable MD5 checksums

2018-01-12 Thread Paul Robinson via Phabricator via cfe-commits
probinson created this revision. probinson added reviewers: dblaikie, aprantl. probinson added a project: debug-info. Herald added subscribers: cfe-commits, JDevlieghere. Under `-gdwarf-5` generate MD5 checksums of source files to emit to the DWARF v5 line table. This consumes 16 bytes per sourc

r322410 - [analyzer] Don't flag strcpy of string literals into sufficiently large buffers.

2018-01-12 Thread Artem Dergachev via cfe-commits
Author: dergachev Date: Fri Jan 12 14:12:11 2018 New Revision: 322410 URL: http://llvm.org/viewvc/llvm-project?rev=322410&view=rev Log: [analyzer] Don't flag strcpy of string literals into sufficiently large buffers. In the security package, we have a simple syntactic check that warns about strcp

[PATCH] D41384: [analyzer] Suppress false positive warnings form security.insecureAPI.strcpy

2018-01-12 Thread Phabricator via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL322410: [analyzer] Don't flag strcpy of string literals into sufficiently large buffers. (authored by dergachev, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https:/

[PATCH] D41935: [analyzer] NFC: Mark default constructors for ProgramPoints.

2018-01-12 Thread Devin Coughlin via Phabricator via cfe-commits
dcoughlin accepted this revision. dcoughlin added a comment. This revision is now accepted and ready to land. LGTM! Repository: rC Clang https://reviews.llvm.org/D41935 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org

r322413 - [DWARFv5] Have -gdwarf-5 generate MD5 checksums

2018-01-12 Thread Paul Robinson via cfe-commits
Author: probinson Date: Fri Jan 12 14:19:03 2018 New Revision: 322413 URL: http://llvm.org/viewvc/llvm-project?rev=322413&view=rev Log: [DWARFv5] Have -gdwarf-5 generate MD5 checksums Differential Revision: https://reviews.llvm.org/D42011 Modified: cfe/trunk/lib/CodeGen/CGDebugInfo.cpp c

[PATCH] D42011: [DWARFv5] Enable MD5 checksums

2018-01-12 Thread Paul Robinson via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rL322413: [DWARFv5] Have -gdwarf-5 generate MD5 checksums (authored by probinson, committed by ). Herald added a subscriber: llvm-commits. Changed prior to commit: https://reviews.llvm.org/D42011?vs=12970

[PATCH] D42011: [DWARFv5] Enable MD5 checksums

2018-01-12 Thread Paul Robinson via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rC322413: [DWARFv5] Have -gdwarf-5 generate MD5 checksums (authored by probinson, committed by ). Changed prior to commit: https://reviews.llvm.org/D42011?vs=129703&id=129708#toc Repository: rC Clang

r322414 - When rebuilding an InitListExpr, don't give it a type.

2018-01-12 Thread Richard Smith via cfe-commits
Author: rsmith Date: Fri Jan 12 14:21:33 2018 New Revision: 322414 URL: http://llvm.org/viewvc/llvm-project?rev=322414&view=rev Log: When rebuilding an InitListExpr, don't give it a type. InitListExprs without types (well, with type 'void') represent not-yet-analyzed initializer lists; InitListEx

r322417 - Fix test on Windows that was added in r322382.

2018-01-12 Thread Douglas Yung via cfe-commits
Author: dyung Date: Fri Jan 12 14:32:01 2018 New Revision: 322417 URL: http://llvm.org/viewvc/llvm-project?rev=322417&view=rev Log: Fix test on Windows that was added in r322382. The test was using "%clang++" which on Windows became "clang.exe++". Use %clangxx instead. Reviewed by Paul Robinson

[PATCH] D41458: [libc++][C++17] Elementary string conversions for integral types

2018-01-12 Thread Zhihao Yuan via Phabricator via cfe-commits
lichray updated this revision to Diff 129714. lichray added a comment. src/support/itoa/itoa.cpp in previous diffs were copyrighted by Tencent, now LLVM, contributed by the same author. Repository: rCXX libc++ https://reviews.llvm.org/D41458 Files: .gitignore include/charconv include/

r322420 - Try to suppress Windows testing again.

2018-01-12 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jan 12 15:13:33 2018 New Revision: 322420 URL: http://llvm.org/viewvc/llvm-project?rev=322420&view=rev Log: Try to suppress Windows testing again. Modified: cfe/trunk/test/Modules/odr_hash-Friend.cpp Modified: cfe/trunk/test/Modules/odr_hash-Friend.cpp URL: http://l

[PATCH] D42014: Disable BinPackArguments and BinPackParameters in Google Objective-C style ⚙️

2018-01-12 Thread Stephane Moore via Phabricator via cfe-commits
stephanemoore created this revision. Herald added subscribers: cfe-commits, klimek. Defaulting BinPackArguments and BinPackParameters to false is a better representation of Google Objective-C style. Repository: rC Clang https://reviews.llvm.org/D42014 Files: lib/Format/Format.cpp Index:

[PATCH] D42014: Disable BinPackArguments and BinPackParameters in Google Objective-C style ⚙️

2018-01-12 Thread Stephane Moore via Phabricator via cfe-commits
stephanemoore updated this revision to Diff 129718. stephanemoore added a comment. Sorted the Objective-C configuration for consistency. https://reviews.llvm.org/D42014 Files: lib/Format/Format.cpp Index: lib/Format/Format.cpp

[PATCH] D42015: [analyzer] NFC: RetainCount: Don't dump() regions to the user.

2018-01-12 Thread Artem Dergachev via Phabricator via cfe-commits
NoQ created this revision. NoQ added reviewers: dcoughlin, george.karpenkov. Herald added subscribers: cfe-commits, a.sidorin, szepet, xazax.hun. `RetainCountChecker` appears to be using `MemRegion::getString()` to present the region to the user, which is equivalent to `MemRegion->dump()` and as

[PATCH] D42017: Link sanitized programs on NetBSD with -lkvm

2018-01-12 Thread Kamil Rytarowski via Phabricator via cfe-commits
krytarowski created this revision. krytarowski added reviewers: joerg, vitalybuka, dvyukov. krytarowski added a project: Sanitizers. Herald added a subscriber: llvm-commits. kvm - kernel memory interface This set of functions is defined in the libkvm library. The kvm(3) functions are used in pro

[PATCH] D42019: [Driver] Set default sysroot for Fuchsia if none is specified

2018-01-12 Thread Petr Hosek via Phabricator via cfe-commits
phosek created this revision. phosek added a reviewer: mcgrathr. Herald added a subscriber: cfe-commits. When sysroot isn't explicitly set, try to use the default location which is /../ Repository: rC Clang https://reviews.llvm.org/D42019 Files: lib/Driver/ToolChains/Fuchsia.cpp Index:

[PATCH] D41977: [libc++] Fix PR20855 -- libc++ incorrectly diagnoses illegal reference binding in std::tuple.

2018-01-12 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
rsmith added inline comments. Comment at: include/tuple:185-186 +// Allow "int&&" to bind to 'int const&' +|| (is_rvalue_reference<_Tp>::value && is_const<_RawHp>::value && +is_same<_RawHp, const _RawTp>::value) >; It would b

[PATCH] D41977: [libc++] Fix PR20855 -- libc++ incorrectly diagnoses illegal reference binding in std::tuple.

2018-01-12 Thread Richard Smith - zygoloid via Phabricator via cfe-commits
rsmith added a comment. This will still diagnose valid and reasonable programs, such as: struct ConvertToRef { operator int&(); }; std::tuple t = {ConvertToRef()}; ... on compilers that don't provide the trait. You could maybe try to work around that by checking to see if the type has a mem

[PATCH] D41820: [coroutines] Pass coro func args to promise ctor

2018-01-12 Thread Gor Nishanov via Phabricator via cfe-commits
GorNishanov added a comment. In https://reviews.llvm.org/D41820#974116, @EricWF wrote: > Is this behavior specified somewhere? Or are we simply adding an extension to > Clang? If so I would really prefer to add my `co_promise` solution (but I > need to write a paper in favor of it first). Bef

[PATCH] D39963: [RISCV] Add initial RISC-V target and driver support

2018-01-12 Thread Petr Hosek via Phabricator via cfe-commits
phosek added a comment. Herald added a subscriber: niosHD. This has broken our toolchain build, the log is here: https://logs.chromium.org/v/?s=fuchsia%2Fbuildbucket%2Fcr-buildbucket.appspot.com%2F8957686819564148864%2F%2B%2Fsteps%2Fcheck_clang%2F0%2Fstdout. The failure is: **

r322427 - Remove unused addIfPresent function.

2018-01-12 Thread Eric Christopher via cfe-commits
Author: echristo Date: Fri Jan 12 16:46:47 2018 New Revision: 322427 URL: http://llvm.org/viewvc/llvm-project?rev=322427&view=rev Log: Remove unused addIfPresent function. Modified: cfe/trunk/lib/CodeGen/CGObjCMac.cpp Modified: cfe/trunk/lib/CodeGen/CGObjCMac.cpp URL: http://llvm.org/viewvc

[PATCH] D40560: [analyzer] Get construction into `operator new` running in simple cases.

2018-01-12 Thread Devin Coughlin via Phabricator via cfe-commits
dcoughlin accepted this revision. dcoughlin added a comment. This revision is now accepted and ready to land. LGTM with the TODO and the test case I requested inline. Comment at: lib/StaticAnalyzer/Core/ExprEngine.cpp:487 +if (const MemRegion *MR = I.second.getAsRegion()) +

[PATCH] D41250: [analyzer] Model implied cast around operator new().

2018-01-12 Thread Devin Coughlin via Phabricator via cfe-commits
dcoughlin accepted this revision. dcoughlin added a comment. This looks good to me, as well. https://reviews.llvm.org/D41250 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D42019: [Driver] Set default sysroot for Fuchsia if none is specified

2018-01-12 Thread Roland McGrath via Phabricator via cfe-commits
mcgrathr added inline comments. Comment at: lib/Driver/ToolChains/Fuchsia.cpp:152 + llvm::sys::path::append(P, normalizeTriple(Triple)); + return P.str(); +} The GCC behavior (if --with-sysroot is given to configure) is tooldir/sys-root, not tooldir itself.

[PATCH] D41266: [analyzer] With c++-allocator-inlining, fix memory space for operator new pointers.

2018-01-12 Thread Devin Coughlin via Phabricator via cfe-commits
dcoughlin accepted this revision. dcoughlin added a comment. LGTM as well. https://reviews.llvm.org/D41266 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D41934: [analyzer] Fix CXXNewExpr callback order.

2018-01-12 Thread Devin Coughlin via Phabricator via cfe-commits
dcoughlin accepted this revision. dcoughlin added a comment. This revision is now accepted and ready to land. Looks great. It is nice to have this fixed and cleaned up! Comment at: lib/StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp:95 + llvm::errs() << "PreCall"; +

[PATCH] D41797: [analyzer] Suppress escape of this-pointer during construction.

2018-01-12 Thread Devin Coughlin via Phabricator via cfe-commits
dcoughlin accepted this revision. dcoughlin added a comment. This revision is now accepted and ready to land. LGTM! Repository: rC Clang https://reviews.llvm.org/D41797 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org

[PATCH] D40218: [Clang] Add __builtin_launder

2018-01-12 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 2 inline comments as done. EricWF added inline comments. Comment at: lib/CodeGen/CGBuiltin.cpp:1674 +Value *Ptr = EmitScalarExpr(E->getArg(0)); +Ptr = Builder.CreateInvariantGroupBarrier(Ptr); +return RValue::get(Ptr); rsmith wrote: > It

[PATCH] D40218: [Clang] Add __builtin_launder

2018-01-12 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 129740. EricWF marked an inline comment as done. EricWF added a comment. - Address inline comments about missing diagnostics for void pointers and function pointers. - Address inline comments about only enabling when `-fstrict-vtable-pointers` is specified, a

[PATCH] D40218: [Clang] Add __builtin_launder

2018-01-12 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 129742. EricWF added a comment. - Improve diagnostic handling. https://reviews.llvm.org/D40218 Files: include/clang/Basic/Builtins.def include/clang/Basic/DiagnosticSemaKinds.td lib/AST/ExprConstant.cpp lib/CodeGen/CGBuiltin.cpp lib/Sema/SemaChecki

[PATCH] D41881: [analyzer] Flag bcmp, bcopy and bzero as obsolete

2018-01-12 Thread Devin Coughlin via Phabricator via cfe-commits
dcoughlin accepted this revision. dcoughlin added a comment. This revision is now accepted and ready to land. Thanks for adding these! This looks good to me. Do you have commit access, or do you need someone to commit this? Repository: rC Clang https://reviews.llvm.org/D41881

[PATCH] D42015: [analyzer] NFC: RetainCount: Don't dump() regions to the user.

2018-01-12 Thread Devin Coughlin via Phabricator via cfe-commits
dcoughlin accepted this revision. dcoughlin added a comment. This revision is now accepted and ready to land. LGTM. Thanks for fixing this. Repository: rC Clang https://reviews.llvm.org/D42015 ___ cfe-commits mailing list cfe-commits@lists.llvm.o

[PATCH] D41977: [libc++] Fix PR20855 -- libc++ incorrectly diagnoses illegal reference binding in std::tuple.

2018-01-12 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D41977#975403, @rsmith wrote: > This will still diagnose valid and reasonable programs, such as: > > struct ConvertToRef { operator int&(); }; > std::tuple t = {ConvertToRef()}; > > > ... on compilers that don't provide the trait. You could

[PATCH] D41816: [analyzer] Model and check unrepresentable left shifts

2018-01-12 Thread Devin Coughlin via Phabricator via cfe-commits
dcoughlin added a comment. The diagnostic text looks to me, but I do have a comment about the nested 'if' inline. Comment at: lib/StaticAnalyzer/Checkers/UndefResultChecker.cpp:150 +SB.getKnownValue(state, C.getSVal(B->getRHS())); +if ((unsigned) RHS->getZE

[PATCH] D41977: [libc++] Fix PR20855 -- libc++ incorrectly diagnoses illegal reference binding in std::tuple.

2018-01-12 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 129744. EricWF added a comment. - Address @rsmith's comments by removing the fallback implementation of the diagnostics. https://reviews.llvm.org/D41977 Files: include/tuple test/libcxx/utilities/tuple/tuple.tuple/diagnose_reference_binding.fail.cpp t

[PATCH] D42014: Disable BinPackArguments and BinPackParameters in Google Objective-C style ⚙️

2018-01-12 Thread Stephane Moore via Phabricator via cfe-commits
stephanemoore added a comment. I am still working to verify that this change represents actual consensus. I will hold off on adding reviewers until then. https://reviews.llvm.org/D42014 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http:/

[PATCH] D37035: Implement __builtin_LINE() et. al. to support source location capture.

2018-01-12 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 129746. EricWF added a comment. - Introduce `SourceLocExprScope.h` to help reduce code duplication. - Merge with upstream. https://reviews.llvm.org/D37035 Files: docs/LanguageExtensions.rst include/clang/AST/Expr.h include/clang/AST/ExprCXX.h include

r322396 - Refactor handling of signext/zeroext in ABIArgInfo

2018-01-12 Thread Alex Bradbury via cfe-commits
Author: asb Date: Fri Jan 12 12:08:16 2018 New Revision: 322396 URL: http://llvm.org/viewvc/llvm-project?rev=322396&view=rev Log: Refactor handling of signext/zeroext in ABIArgInfo As @rjmccall suggested in D40023, we can get rid of ABIInfo::shouldSignExtUnsignedType (used to handle cases like t

Re: r321395 - [ODRHash] Support ODR violation detection in functions.

2018-01-12 Thread Eric Fiselier via cfe-commits
Seems to be working now. Thank you! On Thu, Jan 11, 2018 at 9:46 PM, Richard Trieu wrote: > Hi Vedant and Eric, > > Please retry after r322350. I suspect an interaction between templates > and friend functions is causing this issue. This revision disables hashing > for friend functions for no

r322431 - DR126: partially implement the const-correct rules for exception handler matching.

2018-01-12 Thread Richard Smith via cfe-commits
Author: rsmith Date: Fri Jan 12 21:05:45 2018 New Revision: 322431 URL: http://llvm.org/viewvc/llvm-project?rev=322431&view=rev Log: DR126: partially implement the const-correct rules for exception handler matching. While here, fix up the myriad other ways in which Sema's two "can this handler c

[PATCH] D41815: [clang-tidy] implement check for goto

2018-01-12 Thread Roman Lebedev via Phabricator via cfe-commits
lebedev.ri added inline comments. Comment at: clang-tidy/cppcoreguidelines/AvoidGotoCheck.cpp:21 +AST_MATCHER(GotoStmt, isForwardJumping) { + return Node.getLocStart() < Node.getLabel()->getLocStart(); +} Hm, on a second thought, i think this will have false-pos

<    1   2