[PATCH] D34249: [libc++] Don't use UTIME_OMIT to detect utimensat on Apple

2017-06-16 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: src/experimental/filesystem/operations.cpp:23-28 +// We can use the presence of UTIME_OMIT to detect platforms that do not +// provide utimensat, with some exceptions on OS X. +#if !defined(UTIME_OMIT) || \ + (defined(__MAC_OS_X_VERSION

[PATCH] D34225: [clang-format] Teach clang-format how to handle C++ coroutines

2017-06-17 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: lib/Format/UnwrappedLineParser.cpp:433 case tok::kw___try: + assert(!Tok->is(tok::kw_co_await)); if (!LBraceStack.empty() && LBraceStack.back()->BlockKind == BK_Unknown) This change is accidental. http

[PATCH] D32950: Support C++1z features in `__has_extension`

2017-06-17 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. @rsmith ping. I need this for http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2017/p0607r0.html https://reviews.llvm.org/D32950 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman

[PATCH] D34332: path: Use string_view_t consistently

2017-06-18 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. Thanks! https://reviews.llvm.org/D34332 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cf

[PATCH] D41223: [libc++] Fix PR35491 - std::array of zero-size doesn't work with non-default constructible types.

2017-12-13 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added a reviewer: mclow.lists. This patch fixes llvm.org/PR35491 The fix attempts to maintain ABI compatibility by replacing the array with a instance of `aligned_storage`. https://reviews.llvm.org/D41223 Files: include/array test/std/containers/sequen

[PATCH] D41223: [libc++] Fix PR35491 - std::array of zero-size doesn't work with non-default constructible types.

2017-12-13 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 126898. EricWF added a comment. Fix begin/end/data. === https://reviews.llvm.org/D41223 Files: include/array test/std/containers/sequences/array/array.cons/default.pass.cpp test/std/containers/sequences/array/array.data/data.pass.cpp

[PATCH] D41805: Add pre-C++11 is_constructible wrappers for 3 arguments

2018-01-07 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. Repository: rCXX libc++ https://reviews.llvm.org/D41805 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cg

[PATCH] D40513: [libcxx] Support the use of compiler-rt in lit tests

2018-01-08 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. Herald added a subscriber: llvm-commits. LGTM. Honestly, I'm surprised we don't already have a way to configure like this. Repository: rL LLVM https://reviews.llvm.org/D40513 __

[PATCH] D44103: Adding additional UNSUPPORTED platform in libcxx/test/std/strings/basic.string/string.cons/iter_alloc_deduction.fail.cpp

2018-03-05 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. I think the correct fix is something like this: https://github.com/llvm-mirror/libcxx/commit/6878e852d1d26cca0abee3013822311cd894ca3e Repository: rCXX libc++ https://reviews.llvm.org/D44103 ___ cfe-commits mailing list cf

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

2018-05-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 5 inline comments as done. EricWF added a comment. In https://reviews.llvm.org/D37035#1116102, @kunitoki wrote: > Any news on the status of this ? Would be really nice to have it in. I think this patch is ready to go; but there is more work to be done, as a separate patch, to sup

[PATCH] D47557: Filesystem tests: un-confuse write time

2018-05-31 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. So the reason there are `atime` tests at all is due to the implementation details of `__last_write_time` here. Essentially we have to do extra work trying to maintain the access time. I'm OK with this patches rename. `first` and `second` were certainly not clear. That b

[PATCH] D47557: Filesystem tests: un-confuse write time

2018-05-31 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. Comment at: test/std/experimental/filesystem/fs.op.funcs/fs.op.last_write_time/last_write_time.pass.cpp:257 +TEST_CHECK(LastWriteT

[PATCH] D47613: Mark __c11_atomic_load as const

2018-05-31 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. Repository: rCXX libc++ https://reviews.llvm.org/D47613 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cg

[PATCH] D47607: [libcxx] Almost fix some UB in and

2018-05-31 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Overall this change seems reasonable to me. Thanks for working on this. Initially I was concerned we would hit issues optimizing const objects, but I should have read your description first! Thanks for ensuring Clang doesn't optimize on this. One other concern I have is

[PATCH] D47607: [libcxx] Almost fix some UB in and

2018-05-31 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: libcxx/include/unordered_map:586 union __hash_value_type { typedef _Key key_type; `union` -> `class` Repository: rCXX libc++ https://reviews.llvm.org/D47607 _

[PATCH] D46845: [libcxx][c++17] P0083R5: Splicing Maps and Sets

2018-05-31 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: libcxx/include/__hash_table:2261 +_NodeHandle +__hash_table<_Tp, _Hash, _Equal, _Alloc>::__node_handle_extract_unique( +key_type const& __key) If I'm not mistaken, `__node_handle_extract_unique` and `__node_handle_ex

[PATCH] D47607: [libcxx] Almost fix some UB in and

2018-06-01 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. I should have asked, have we actually seen a midcompile caused by this? Is there a reproducer? Or is this purerly speculative? Repository: rCXX libc++ https://reviews.llvm.org/D47607 ___ cfe-commits mailing list cfe-commi

[PATCH] D45015: [Preprocessor] Allow libc++ to detect when aligned allocation is unavailable.

2018-06-01 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. The new path forward sounds good to me. I'll work on implementing it. Repository: rC Clang https://reviews.llvm.org/D45015 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listi

[PATCH] D45015: [Preprocessor] Allow libc++ to detect when aligned allocation is unavailable.

2018-06-01 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D45015#1119286, @ahatanak wrote: > In https://reviews.llvm.org/D45015#1105388, @rsmith wrote: > > > In https://reviews.llvm.org/D45015#1105372, @vsapsai wrote: > > > > > What when compiler has `__builtin_operator_new`, > > > `__builtin_operator

[PATCH] D45015: [Preprocessor] Allow libc++ to detect when aligned allocation is unavailable.

2018-06-01 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 149596. EricWF edited the summary of this revision. EricWF added a comment. Update the patch with the form suggested in the previous conversation. See the updated summary for a description of the behavior. The Darwin driver no longer passes `-faligned-alloc-u

[PATCH] D45015: [Preprocessor] Allow libc++ to detect when aligned allocation is unavailable.

2018-06-04 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D45015#1121581, @ahatanak wrote: > Could you elaborate on what kind of changes you are planning to make in > libc++ after committing this patch? Libc++ shouldn't actually need any changes if this current patch lands. Currently libc++ is in a

[PATCH] D45015: [Preprocessor] Allow libc++ to detect when aligned allocation is unavailable.

2018-06-05 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D45015#1121874, @ahatanak wrote: > I see, thank you. > > clang front-end currently fails to issue a warning or error when an aligned > allocation/deallocation functions are required but not available in a few > cases (e.g., delete called from

[PATCH] D47802: Allow std::vector to move construct its allocator

2018-06-05 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. @fidget324 Thanks for the patch! Unfortunatly I didn't know you were planning on contributing a fix, so I went ahead and fixed it myself in r334053. Repository: rCXX libc++ https://reviews.llvm.org/D47802 ___ cfe-commits

[PATCH] D45015: [Preprocessor] Allow libc++ to detect when aligned allocation is unavailable.

2018-06-05 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D45015#1123164, @ahatanak wrote: > In https://reviews.llvm.org/D45015#1123097, @EricWF wrote: > > > In https://reviews.llvm.org/D45015#1121874, @ahatanak wrote: > > > > > I see, thank you. > > > > > > clang front-end currently fails to issue a w

[PATCH] D47757: [Sema] Diagnose unavailable aligned deallocation functions called from deleting destructors.

2018-06-05 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. I think we should sink the `DiagnoseUnavailableAlignedAllocation` into `DiagnoseUseOfDecl`, and then adds call's in the few places they're needed. Most paths we care about already pass through there. Comment at: include/clang/Sema/Sema.h:5169 + void

[PATCH] D46806: Remove unused code from __functional_base. NFC.

2018-06-05 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF closed this revision. EricWF added a comment. r334069 Repository: rCXX libc++ https://reviews.llvm.org/D46806 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

[PATCH] D45015: [Preprocessor] Allow libc++ to detect when aligned allocation is unavailable.

2018-06-09 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D45015#1127046, @vsapsai wrote: > In https://reviews.llvm.org/D45015#1121762, @EricWF wrote: > > > In https://reviews.llvm.org/D45015#1121581, @ahatanak wrote: > > > > > Could you elaborate on what kind of changes you are planning to make in >

[PATCH] D45015: [Preprocessor] Allow libc++ to detect when aligned allocation is unavailable.

2018-06-09 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 150635. EricWF added a comment. Remove `-nostdinc++` check as requested. https://reviews.llvm.org/D45015 Files: include/clang/Basic/DiagnosticGroups.td include/clang/Basic/DiagnosticSemaKinds.td lib/Driver/ToolChains/Darwin.cpp lib/Frontend/InitPrepr

[PATCH] D51762: First part of the calendar stuff

2018-10-10 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Herald added a subscriber: arphaman. What's with all the XFAIL's? Comment at: test/std/utilities/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/ctor.sys_days.pass.cpp:10 +// UNSUPPORTED: c++03, c++11, c++14, c++17 +// XFAIL + What?

[PATCH] D51762: First part of the calendar stuff

2018-10-11 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. There also seem to be some non-ASCII characters in this changeset. Could you hunt them out and destroy them? https://reviews.llvm.org/D51762 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-b

[PATCH] D51762: First part of the calendar stuff

2018-10-11 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF requested changes to this revision. EricWF added a comment. This revision now requires changes to proceed. Have you run `git clang-format` over this change set? The blocking issues I see are: - The literal's need to be guarded against older clang dialects. So do their tests. - There are

[PATCH] D51762: First part of the calendar stuff

2018-10-11 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. Also I'm not sure we want to commit to this ABI where the representation of types like `day`, `month`, and `year` are smaller than the integer types they can be constructed from. https://reviews.llvm.org/D51762 ___ cfe-comm

[PATCH] D51868: [libcxx] Build and test fixes for Windows

2018-10-12 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF requested changes to this revision. EricWF added inline comments. This revision now requires changes to proceed. Comment at: CMakeLists.txt:550 +endif() add_compile_flags_if_supported( +-Wextra -W -Wwrite-strings Couldn't we keep the "-Wall" here? And

[PATCH] D50860: [libc++][test] Remove non-portable assumption that thread's constructor allocates with ::new

2018-10-12 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/F.pass.cpp:121 //allocations. +int numAllocs; + Why? Comment at: test/std/thread/thread.threads/thread.thread.class/thread.

[PATCH] D50860: [libc++][test] Remove non-portable assumption that thread's constructor allocates with ::new

2018-10-12 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF requested changes to this revision. EricWF added a comment. This revision now requires changes to proceed. Requesting changes to move this out of my TODO review queue. https://reviews.llvm.org/D50860 ___ cfe-commits mailing list cfe-commits@l

[PATCH] D51762: First part of the calendar stuff

2018-10-12 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: test/std/utilities/time/time.cal/time.cal.ymwd/time.cal.ymwd.members/ctor.sys_days.pass.cpp:10 +// UNSUPPORTED: c++03, c++11, c++14, c++17 +// XFAIL + mclow.lists wrote: > EricWF wrote: > > What? > The `sys_days` type is

[PATCH] D53466: [libcxx] [test] Don't detect Windows' UCRT with TEST_COMPILER_C1XX

2018-10-19 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. Looks fine to me https://reviews.llvm.org/D53466 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/li

[PATCH] D53508: [SemaCXX] Unconfuse Clang when std::align_val_t is unscoped in C++03

2018-10-22 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added a reviewer: rsmith. When -faligned-allocation is specified in C++03 libc++ defines std::align_val_t as an unscoped enumeration type (because Clang didn't provide scoped enumerations as an extension until 8.0). Unfortunately Clang confuses the `align_val

[PATCH] D53508: [SemaCXX] Unconfuse Clang when std::align_val_t is unscoped in C++03

2018-10-24 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. Accepting. This is a good candidate for post-commit review. Repository: rC Clang https://reviews.llvm.org/D53508 ___ cfe-commits mailing list

[PATCH] D53508: [SemaCXX] Unconfuse Clang when std::align_val_t is unscoped in C++03

2018-10-24 Thread Eric Fiselier via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rC345211: [SemaCXX] Unconfuse Clang when std::align_val_t is unscoped in C++03 (authored by EricWF, committed by ). Repository: rC Clang https://reviews.llvm.org/D53508 Files: lib/Sema/SemaExprCXX.cpp

[PATCH] D56731: Add -Wimplicit-ctad warning to diagnose CTAD on types with no user defined deduction guides.

2019-01-15 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added reviewers: rsmith, james.dennett, gromer. Some style guides want to allow using CTAD only on types that "opt-in"; i.e. on types that are designed to support it and not just types that *happen* to work with it. This patch implements the `-Wimplicit-ctad

[PATCH] D56731: Add -Wimplicit-ctad warning to diagnose CTAD on types with no user defined deduction guides.

2019-01-15 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 6 inline comments as done. EricWF added inline comments. Comment at: include/clang/Basic/DiagnosticSemaKinds.td:2129 +def warn_class_template_argument_deduction_no_user_defined_guides : Warning< + "class template argument deduction for %0 that has no user defined d

[PATCH] D56731: Add -Wimplicit-ctad warning to diagnose CTAD on types with no user defined deduction guides.

2019-01-15 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 181829. EricWF marked an inline comment as done. EricWF added a comment. Address inline comments. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56731/new/ https://reviews.llvm.org/D56731 Files: include/clang/Basic/DiagnosticGroups.td include/cla

[PATCH] D56731: Add -Wimplicit-ctad warning to diagnose CTAD on types with no user defined deduction guides.

2019-01-15 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 10 inline comments as done. EricWF added inline comments. Comment at: include/clang/Basic/DiagnosticSemaKinds.td:2129 +def warn_class_template_argument_deduction_no_user_defined_guides : Warning< + "using class template argument deduction for %0 that has no user-de

[PATCH] D56731: Add -Wimplicit-ctad warning to diagnose CTAD on types with no user defined deduction guides.

2019-01-15 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 181972. EricWF added a comment. Address review comments. - Use "%0 maybe not intend to support ctad" like warning text. - Add note about suppression. - Rename `-Wimplicit-ctad` -> `-Wctad-maybe-unsupported` (Perhaps it should be `-Wctad-maybe-unintended`?) A

[PATCH] D55500: [Builtins] Implement __builtin_is_constant_evaluated for use in C++2a

2019-01-15 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 181974. EricWF added a comment. Add the requested tests. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D55500/new/ https://reviews.llvm.org/D55500 Files: include/clang/Basic/Builtins.def lib/AST/ExprConstant.cpp lib/Basic/Builtins.cpp test/Co

[PATCH] D56731: Add -Wimplicit-ctad warning to diagnose CTAD on types with no user defined deduction guides.

2019-01-16 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 182206. EricWF marked 3 inline comments as done. EricWF added a comment. address comments. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D56731/new/ https://reviews.llvm.org/D56731 Files: include/clang/Basic/DiagnosticGroups.td include/clang/Basi

[PATCH] D56731: Add -Wimplicit-ctad warning to diagnose CTAD on types with no user defined deduction guides.

2019-01-16 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: include/clang/Basic/DiagnosticSemaKinds.td:2129 +def warn_class_template_argument_deduction_no_user_defined_guides : Warning< + "using class template argument deduction for %0 that has no user-defined deduction guides" >, + InGroup, De

[PATCH] D56731: Add -Wctad-maybe-unsupported to diagnose CTAD on types with no user defined deduction guides.

2019-01-17 Thread Eric Fiselier via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rC351484: Add -Wctad-maybe-unsupported to diagnose CTAD on types with no user defined… (authored by EricWF, committed by ). Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D5673

[PATCH] D55500: [Builtins] Implement __builtin_is_constant_evaluated for use in C++2a

2019-01-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 6 inline comments as done. EricWF added inline comments. Comment at: test/CodeGenCXX/builtin-is-constant-evaluated.cpp:41-42 + +// CHECK-STATIC-DAG: @p = global i32 26, +CONSTINIT int p = f(); // f().m == 13; initialized to 26 + rsmith wrote: > Do w

[PATCH] D55500: [Builtins] Implement __builtin_is_constant_evaluated for use in C++2a

2019-01-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 183248. EricWF marked 2 inline comments as done. EricWF added a comment. - Add or correct tests as requested. - Fix code gen for initializers of reference types to correctly evaluate the initializer as a constant expression. CHANGES SINCE LAST ACTION https

[PATCH] D40218: [Clang] Add __builtin_launder

2018-11-14 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 174109. EricWF added a comment. Merge with upstream. 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/SemaChecking.cpp t

[PATCH] D40218: [Clang] Add __builtin_launder

2018-11-14 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D40218#1298943, @Romain-Geissler-1A wrote: > Is there any news on this code review ? Is it ready to land ? I think so, but there were some changes regarding incomplete types since Richard last looked at it. I wanted him to sign off on the new

[PATCH] D54630: Move detection of libc++ include dirs to Driver on MacOS

2018-11-19 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. My two cents: I needed something like this when trying to automatically detect if libc++ supported things like sized deallocation, so I would like to see this change go through. (My understanding was that libc++ added a `__libcpp_version` file for just this reason, but

[PATCH] D47111: : Implement monotonic_buffer_resource.

2018-11-26 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. The tests might need some XFAIL'ing, but otherwise I think this looks good. Sorry for the wait. Repository: rCXX libc++ CHANGES SINCE LAST ACTION https://reviews.llvm.org/D47111/n

[PATCH] D55057: [Headers] Make max_align_t match GCC's implementation.

2018-11-29 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added reviewers: rsmith, jyknight. GCC also considers the `__float128` type when constructing `max_align_t`. Clang's definition is intended to exactly match GCC's, so this patch make Clang do the same. NOTE: This breaks the ABI of `max_align_t` by changing i

[PATCH] D55057: [Headers] Make max_align_t match GCC's implementation.

2018-11-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 2 inline comments as done. EricWF added a comment. @jyknight wrote: > And then use that to determine whether to add float128 to the union? Note that `max_align_t` isn't a union of these types, but a struct containing all of them. This seems like a bug to me, but it's what GNU hap

[PATCH] D32950: Support C++1z features in `__has_extension`

2018-12-03 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. I don't mind picking it up again, but it won't be until next week. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D32950/new/ https://reviews.llvm.org/D32950 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http

[PATCH] D53830: [clang-tidy]: Abseil: new check 'abseil-upgrade-duration-conversions'

2018-12-07 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF closed this revision. EricWF added a comment. Committed as r348633. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D53830/new/ https://reviews.llvm.org/D53830 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.or

[PATCH] D40218: [Clang] Add __builtin_launder

2018-12-09 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 22 inline comments as done. EricWF added inline comments. Comment at: lib/CodeGen/CGBuiltin.cpp:1425-1426 + + // FIXME: We either have an incomplete class type, or we have a class template + // whose instantiation has not been forced. Example: + // -

[PATCH] D40218: [Clang] Add __builtin_launder

2018-12-09 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 177445. EricWF marked 6 inline comments as done. EricWF added a comment. Address review comments. @rsmith I think this is good to go. Just need your input on one change. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D40218/new/ https://reviews.llvm.o

[PATCH] D55500: [Builtins] Implement __builtin_is_constant_evaluated for use in C++2a

2018-12-09 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added reviewers: rsmith, MaskRay, bruno, void. Herald added a subscriber: kristina. This patch implements `__builtin_is_constant_evaluated` as specifier by P0595R2 . It is built on the back of Bill Wendling's work for `__builtin_con

[PATCH] D47111: : Implement monotonic_buffer_resource.

2018-12-09 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF requested changes to this revision. EricWF added a comment. This revision now requires changes to proceed. Some of the tests aren't passing with Trunk clang. Please fix these. Comment at: include/experimental/memory_resource:427 +{ +static const size_t __default_buff

[PATCH] D47344: LWG 2843 "Unclear behavior of std::pmr::memory_resource::do_allocate()"

2018-12-09 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF requested changes to this revision. EricWF added a comment. This revision now requires changes to proceed. I don't think this patch is correct or desirable any longer. I think what we should do is throw an exception right away if `__is_overaligned_for_new(align)`, and not even try to allo

[PATCH] D55534: [AST] Store "UsesADL" information in CallExpr.

2018-12-10 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added reviewers: fowles, rsmith, klimek. Herald added a reviewer: shafik. Currently the Clang AST doesn't store information about how the callee of a CallExpr was found. Specifically if it was found using ADL. However, this information is invaluable to toolin

[PATCH] D55500: [Builtins] Implement __builtin_is_constant_evaluated for use in C++2a

2018-12-10 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 2 inline comments as done. EricWF added a comment. Sorry for the delayed response. My email filters were incorrect. Comment at: include/clang/Basic/Builtins.def:759 +// Random C++ builtins. +LANGBUILTIN(__builtin_is_constant_evaluated, "b", "ncu", CXX_LANG) +

[PATCH] D55534: [AST] Store "UsesADL" information in CallExpr.

2018-12-10 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 14 inline comments as done. EricWF added a comment. Address review comments. Fixes incoming. Comment at: include/clang/AST/ExprCXX.h:218 + SourceLocation RP, unsigned MinNumArgs = 0, + bool UsesADL = false) : CallExpr

[PATCH] D55534: [AST] Store "UsesADL" information in CallExpr.

2018-12-11 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 12 inline comments as done. EricWF added a comment. Address more review comments. Update incoming. Comment at: include/clang/AST/Expr.h:2425 CallExpr(const ASTContext &C, StmtClass SC, unsigned NumPreArgs, - unsigned NumArgs, EmptyShell Empty); +

[PATCH] D55534: [AST] Store "UsesADL" information in CallExpr.

2018-12-11 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 177705. EricWF marked an inline comment as done. EricWF added a comment. Update with fixes for review comments. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D55534/new/ https://reviews.llvm.org/D55534 Files: include/clang/AST/Expr.h include/clan

[PATCH] D55534: [AST] Store "UsesADL" information in CallExpr.

2018-12-11 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 177716. EricWF added a comment. More tests. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D55534/new/ https://reviews.llvm.org/D55534 Files: include/clang/AST/Expr.h include/clang/AST/ExprCXX.h include/clang/AST/Stmt.h include/clang/ASTMatche

[PATCH] D55534: [AST] Store "UsesADL" information in CallExpr.

2018-12-11 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 177720. EricWF marked 2 inline comments as done. EricWF added a comment. Register matcher and regenerate docs. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D55534/new/ https://reviews.llvm.org/D55534 Files: docs/LibASTMatchersReference.html incl

[PATCH] D55534: [AST] Store "UsesADL" information in CallExpr.

2018-12-11 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 3 inline comments as done. EricWF added a comment. Address more inline comments. Comment at: docs/LibASTMatchersReference.html:2579-2581 +y(x); Matches +NS::y(x); Doesn't match +y(42); Doesn't match. aaron.ballman wrote: > This is not

[PATCH] D55534: [AST] Store "UsesADL" information in CallExpr.

2018-12-11 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 13 inline comments as done. EricWF added inline comments. Comment at: include/clang/Sema/Sema.h:2758 bool AllowExplicit = false, +bool IsADLCandidate = false, ConversionSequenceLis

[PATCH] D55534: [AST] Store "UsesADL" information in CallExpr.

2018-12-11 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 177752. EricWF marked 3 inline comments as done. EricWF added a comment. Address review comments. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D55534/new/ https://reviews.llvm.org/D55534 Files: docs/LibASTMatchersReference.html include/clang/AST

[PATCH] D55534: [AST] Store "UsesADL" information in CallExpr.

2018-12-11 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked an inline comment as done. EricWF added a comment. I think this is good to go. Any more comments? Comment at: include/clang/Sema/Sema.h:2758 bool AllowExplicit = false, +bool IsADLCandidate = false,

[PATCH] D59038: [8.0 Regression] Fix handling of `__builtin_constant_p` inside the enable_if attribute.

2019-03-06 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF created this revision. EricWF added reviewers: rsmith, hans, sbenza. Herald added a subscriber: kristina. Herald added a project: clang. The following code is accepted by Clang 7 and prior but rejected by the upcoming 8 release and in trunk [1] // error {{never produces a constant expre

[PATCH] D47344: LWG 2843 "Unclear behavior of std::pmr::memory_resource::do_allocate()"

2019-03-06 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 other than removing the destructor. Comment at: src/experimental/memory_resource.cpp:29 -public: -~__new_delete_memory_resource_imp() = default; - W

[PATCH] D47344: LWG 2843 "Unclear behavior of std::pmr::memory_resource::do_allocate()"

2019-03-06 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: src/experimental/memory_resource.cpp:29 -public: -~__new_delete_memory_resource_imp() = default; - Quuxplusone wrote: > EricWF wrote: > > Why are you removing this? > Just removing unnecessary cruft. Same reason I add

[PATCH] D59076: [coroutines][PR40978] Emit error for co_yield within catch block

2019-03-06 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: lib/Sema/SemaCoroutine.cpp:675 + // Second emphasis of [expr.await]p2: must be outside of an exception handler. + if (S.getCurScope()->getFlags() & Scope::CatchScope) { +S.Diag(Loc, diag::err_coroutine_within_handler) << Keyword; -

[PATCH] D59038: [8.0 Regression] Fix handling of `__builtin_constant_p` inside the enable_if attribute.

2019-03-07 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In D59038#1421310 , @hans wrote: > I think I'll have to defer to Richard for reviewing this, since I'm not > familiar with the code. Since it's a regression we probably want to merge it > to clang 8. Can you give any guidance to h

[PATCH] D59038: [8.0 Regression] Fix handling of `__builtin_constant_p` inside the enable_if attribute.

2019-03-08 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 189888. EricWF added a comment. - Fix regressions inside template parameters, case statements, and enumerators. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D59038/new/ https://reviews.llvm.org/D59038 Files: lib/AST/ExprConstant.cpp test/SemaCXX

[PATCH] D59038: [8.0 Regression] Fix handling of `__builtin_constant_p` inside the enable_if attribute.

2019-03-08 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In D59038#1422905 , @hans wrote: > In D59038#1422890 , @rsmith wrote: > > > LGTM, and I think this is safe enough to take for Clang 8. > > > Do you think the severity is high enough to spin a

[PATCH] D59038: [8.0 Regression] Fix handling of `__builtin_constant_p` inside the enable_if attribute.

2019-03-08 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 189927. EricWF added a comment. Add more tests. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D59038/new/ https://reviews.llvm.org/D59038 Files: lib/AST/ExprConstant.cpp test/SemaCXX/constant-expression-cxx1y.cpp test/SemaCXX/enable_if.cpp In

[PATCH] D59038: [8.0 Regression] Fix handling of `__builtin_constant_p` inside template arguments, enumerators, case statements, and the enable_if attribute.

2019-03-08 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 189930. EricWF retitled this revision from "[8.0 Regression] Fix handling of `__builtin_constant_p` inside the enable_if attribute." to "[8.0 Regression] Fix handling of `__builtin_constant_p` inside template arguments, enumerators, case statements, and the e

[PATCH] D59038: [8.0 Regression] Fix handling of `__builtin_constant_p` inside template arguments, enumerators, case statements, and the enable_if attribute.

2019-03-08 Thread Eric Fiselier via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rC355743: [8.0 Regression] Fix handling of `__builtin_constant_p` inside template… (authored by EricWF, committed by ). Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D59038/ne

[PATCH] D47344: LWG 2843 "Unclear behavior of std::pmr::memory_resource::do_allocate()"

2019-03-08 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. @Quuxplusone Since the LLVM license has changed since you created this, I need you to confirm that you accept LLVM's new license. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D47344/new/ https://reviews.llvm.org/D47344

[PATCH] D47344: LWG 2843 "Unclear behavior of std::pmr::memory_resource::do_allocate()"

2019-03-08 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF closed this revision. EricWF added a comment. Committed as rr355763 CHANGES SINCE LAST ACTION https://reviews.llvm.org/D47344/new/ https://reviews.llvm.org/D47344 ___ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.o

[PATCH] D57645: [C++2a] Fix PR40576: Turn destroying delete off prior to C++2a. Add -fdestroying-delete

2019-03-18 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF abandoned this revision. EricWF added a comment. Herald added a subscriber: jdoerfert. This is the wrong approach. Abandoning. Repository: rC Clang CHANGES SINCE LAST ACTION https://reviews.llvm.org/D57645/new/ https://reviews.llvm.org/D57645 _

[PATCH] D55500: [Builtins] Implement __builtin_is_constant_evaluated for use in C++2a

2019-04-23 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 196368. EricWF added a comment. - Merge with master. CHANGES SINCE LAST ACTION https://reviews.llvm.org/D55500/new/ https://reviews.llvm.org/D55500 Files: include/clang/Basic/Builtins.def lib/AST/ExprConstant.cpp lib/Basic/Builtins.cpp lib/CodeGen

[PATCH] D55500: [Builtins] Implement __builtin_is_constant_evaluated for use in C++2a

2019-04-23 Thread Eric Fiselier via Phabricator via cfe-commits
This revision was automatically updated to reflect the committed changes. Closed by commit rC359067: [Builtins] Implement __builtin_is_constant_evaluated for use in C++2a (authored by EricWF, committed by ). Herald added a project: clang. Repository: rC Clang CHANGES SINCE LAST ACTION https:

[PATCH] D48292: use modern type trait implementations when available

2019-04-24 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. Herald added subscribers: libcxx-commits, miyuki, jfb, ldionne. LGTM minus nits. Comment at: include/type_traits:3683 + +#elif __has_feature(has_trivial_destructor) || (_GNUC

[PATCH] D48292: use modern type trait implementations when available

2019-04-24 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. This patch is OK to land as-is. Doing the cleanup separately makes sense. Comment at: include/type_traits:3683 + +#elif __has_feature(has_trivial_destructor) || (_GNUC_VER >= 403) + rsmith wrote: > EricWF wrote: > > We don't support any

[PATCH] D50860: [libc++][test] Remove non-portable assumption that thread's constructor allocates with ::new

2019-04-27 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 minus inline comments. Comment at: test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/F.pass.cpp:171 #ifndef TEST_HAS_NO_EXCEPTIONS -{ +if

[PATCH] D50130: [libc++] Fix build failures after merging

2018-09-22 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Herald added a subscriber: libcxx-commits. Comment at: lib/abi/x86_64-unknown-linux-gnu.v1.abilist:1195 {'name': '_ZNSt3__16__clocEv', 'is_defined': True, 'type': 'FUNC'} +{'name': '_ZNSt3__16__itoa8__u64toaEmPc', 'is_defined': True, 'type': 'FUNC'}

[PATCH] D45179: [libc++] Add _LIBCPP_ENABLE_NODISCARD and _LIBCPP_NODISCARD_EXT to allow pre-C++2a [[nodiscard]]

2018-09-22 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added a comment. In https://reviews.llvm.org/D45179#1241721, @lebedev.ri wrote: > In https://reviews.llvm.org/D45179#1225911, @EricWF wrote: > > > I don't think it ever landed. I'll try to get it in this week. > > > What does this need? > Is there some changes missing still? > Or this si

[PATCH] D45179: [libc++] Add _LIBCPP_ENABLE_NODISCARD and _LIBCPP_NODISCARD_EXT to allow pre-C++2a [[nodiscard]]

2018-09-22 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF accepted this revision. EricWF added a comment. @lebedev.ri Sure, be my guest. It frees me up to do reviews. Thank you. I just finished running the test suite, so it should be good to go. https://reviews.llvm.org/D45179 ___ cfe-commits maili

[PATCH] D52391: Document new symbols for __u64toa and __u32toa

2018-09-22 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. Thanks Repository: rCXX libc++ https://reviews.llvm.org/D52391 ___ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm

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

2018-09-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF added inline comments. Comment at: docs/LanguageExtensions.rst:2179 +Clang provides experimental builtins to support C++ standard library implementation +of `std::experimental::source_location` as specified in http://wg21.link/N4600. +With the exception of `__builtin_CO

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

2018-09-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF marked 10 inline comments as done. EricWF added inline comments. Comment at: include/clang/AST/APValue.h:66-73 +LValueBase(const Expr *E, const char *StrVal, + const ConstantArrayType *ArrTy); template -LValueBase(T P, unsigned I = 0, unsigned

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

2018-09-30 Thread Eric Fiselier via Phabricator via cfe-commits
EricWF updated this revision to Diff 167664. EricWF added a comment. Build, cache and substitute the `SourceLocExpr` for a `StringLiteral` during constant evaluation. This is instead of the changes to `LValueBase`which stored the string value and type in addition to the original `SourceLocExpr`.

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