Page MenuHomePhabricator

ychen (Yuanfang Chen)
User

Projects

User Details

User Since
Nov 19 2013, 9:02 PM (487 w, 1 d)

Recent Activity

Wed, Mar 15

ychen committed rGe7a2da5298dc: [Inliner] Assign dummy debug location to the memcpy for byval argument (authored by ychen).
[Inliner] Assign dummy debug location to the memcpy for byval argument
Wed, Mar 15, 10:31 AM · Restricted Project, Restricted Project
ychen closed D145607: [Inliner] Assign dummy debug location to the memcpy for byval argument.
Wed, Mar 15, 10:30 AM · debug-info, Restricted Project, Restricted Project

Mon, Mar 13

ychen added a comment to D145607: [Inliner] Assign dummy debug location to the memcpy for byval argument.

ping

Mon, Mar 13, 12:12 PM · debug-info, Restricted Project, Restricted Project

Fri, Mar 10

ychen committed rG9aae408d5510: [NFC] fix typo `funciton` -> `function` (authored by ychen).
[NFC] fix typo `funciton` -> `function`
Fri, Mar 10, 6:06 PM · Restricted Project, Restricted Project, Restricted Project, Restricted Project
ychen abandoned D126341: Order implicitly instantiated global variable's initializer by the reverse instantiation order.

Superseded by D127233, D127259, rG7f8d844df5e9

Fri, Mar 10, 12:49 PM · Restricted Project, Restricted Project

Wed, Mar 8

ychen requested review of D145607: [Inliner] Assign dummy debug location to the memcpy for byval argument.
Wed, Mar 8, 1:16 PM · debug-info, Restricted Project, Restricted Project

Mon, Mar 6

ychen committed rG3e00f24f6356: [NFC][Clang] add test comments for GitHub issue 58896 (authored by ychen).
[NFC][Clang] add test comments for GitHub issue 58896
Mon, Mar 6, 11:59 AM · Restricted Project, Restricted Project

Sun, Mar 5

ychen committed rG7f8d844df5e9: [CodeGen] guarantee variable templates are initialized in the reverse… (authored by ychen).
[CodeGen] guarantee variable templates are initialized in the reverse…
Sun, Mar 5, 3:44 PM · Restricted Project, Restricted Project

Fri, Mar 3

ychen committed rGe423885e272c: [CodeGen] guarantee templated static variables are initialized in the reverse… (authored by ychen).
[CodeGen] guarantee templated static variables are initialized in the reverse…
Fri, Mar 3, 12:13 AM · Restricted Project, Restricted Project
ychen closed D127259: [CodeGen] guarantee templated static variables are initialized in the reverse instantiation order.
Fri, Mar 3, 12:13 AM · Restricted Project, Restricted Project
ychen updated the diff for D127259: [CodeGen] guarantee templated static variables are initialized in the reverse instantiation order.
  • rebase
Fri, Mar 3, 12:11 AM · Restricted Project, Restricted Project
ychen added a comment to D127259: [CodeGen] guarantee templated static variables are initialized in the reverse instantiation order.

I don't see much compile-time concerns myself,

Fri, Mar 3, 12:11 AM · Restricted Project, Restricted Project

Jan 23 2023

ychen added a comment to D139837: [Clang] Implements CTAD for aggregates P1816R0 and P2082R1.

Thanks for your effort on this!

FYI I landed parenthesized aggregate initialization in D141546, so CTAD for that feature should no longer be blocked.

Jan 23 2023, 6:21 PM · Restricted Project, Restricted Project

Jan 7 2023

ychen added a reviewer for D139837: [Clang] Implements CTAD for aggregates P1816R0 and P2082R1: cor3ntin.
Jan 7 2023, 8:29 PM · Restricted Project, Restricted Project

Dec 17 2022

ychen updated the diff for D139837: [Clang] Implements CTAD for aggregates P1816R0 and P2082R1.
  • update cxx_status.html
Dec 17 2022, 12:53 AM · Restricted Project, Restricted Project

Dec 12 2022

ychen added a comment to D139837: [Clang] Implements CTAD for aggregates P1816R0 and P2082R1.

Hey. Thanks a lot for working on this.
I did a first pass, looking at mostly style issues, looking at conformance will probably take me a lot more time, but i think this looks pretty good overall

Dec 12 2022, 6:42 PM · Restricted Project, Restricted Project
ychen updated the diff for D139837: [Clang] Implements CTAD for aggregates P1816R0 and P2082R1.
  • Address Corentin's comments
Dec 12 2022, 6:42 PM · Restricted Project, Restricted Project
ychen updated the diff for D139837: [Clang] Implements CTAD for aggregates P1816R0 and P2082R1.

format

Dec 12 2022, 5:25 AM · Restricted Project, Restricted Project
ychen added a reviewer for D139837: [Clang] Implements CTAD for aggregates P1816R0 and P2082R1: Restricted Project.
Dec 12 2022, 5:23 AM · Restricted Project, Restricted Project
ychen requested review of D139837: [Clang] Implements CTAD for aggregates P1816R0 and P2082R1.
Dec 12 2022, 5:22 AM · Restricted Project, Restricted Project

Nov 2 2022

ychen committed rG40e99473170f: [Clang] follow-up D128745, remove ClangABICompat checks (authored by ychen).
[Clang] follow-up D128745, remove ClangABICompat checks
Nov 2 2022, 4:33 PM · Restricted Project, Restricted Project
ychen closed D136120: [Clang] follow-up D128745, remove ClangABICompat checks.
Nov 2 2022, 4:33 PM · Restricted Project, Restricted Project
ychen updated the diff for D136120: [Clang] follow-up D128745, remove ClangABICompat checks.
  • rebase
Nov 2 2022, 12:38 PM · Restricted Project, Restricted Project

Nov 1 2022

ychen accepted D136975: [Concepts] Correctly handle failure when checking concepts recursively.

LGTM

Nov 1 2022, 11:38 AM · Restricted Project, Restricted Project
ychen added a comment to D136975: [Concepts] Correctly handle failure when checking concepts recursively.

Thanks for the patch. It looks good to me.

About

Note that we DO need to be careful to make sure we still check
constraints properly that are caused by a previous constraint, but not
derived from (such as when a check causes us to check special member
function generation), so we cannot use the existing logic to see if this
is being instantiated.

For the derived from case, I think we also end up getting the infinite recursion? Why do we disable the check for the derived from case?

Can you clarify what you mean? I'm not sure which test case you're speaking of.

Nov 1 2022, 11:32 AM · Restricted Project, Restricted Project
ychen added a comment to D136975: [Concepts] Correctly handle failure when checking concepts recursively.

Thanks for the patch. It looks good to me.

Nov 1 2022, 10:55 AM · Restricted Project, Restricted Project

Oct 30 2022

ychen committed rG500876226c60: [lit][NFC] not check stdout in googletest-timeout.py (authored by ychen).
[lit][NFC] not check stdout in googletest-timeout.py
Oct 30 2022, 11:21 PM · Restricted Project, Restricted Project
ychen committed rGe18c2c5548f6: [Clang] use non-instantiated function declaration for constraints partial… (authored by ychen).
[Clang] use non-instantiated function declaration for constraints partial…
Oct 30 2022, 10:40 PM · Restricted Project, Restricted Project
ychen committed rG5d086cce8b92: [Clang] perform "maximum TLS alignment" check for template instantiation (authored by ychen).
[Clang] perform "maximum TLS alignment" check for template instantiation
Oct 30 2022, 10:40 PM · Restricted Project, Restricted Project
ychen closed D136545: [Clang] use non-instantiated function declaration for constraints partial ordering.
Oct 30 2022, 10:40 PM · Restricted Project, Restricted Project
ychen closed D136744: [Clang] perform "maximum TLS alignment" check for template instantiation.
Oct 30 2022, 10:40 PM · Restricted Project, Restricted Project

Oct 28 2022

ychen added inline comments to rGd3efa577f549: [lit] Keep stdout/stderr when using GoogleTest format.
Oct 28 2022, 12:21 PM · Restricted Project, Restricted Project

Oct 26 2022

ychen added inline comments to D136744: [Clang] perform "maximum TLS alignment" check for template instantiation.
Oct 26 2022, 10:30 AM · Restricted Project, Restricted Project
ychen updated the diff for D136744: [Clang] perform "maximum TLS alignment" check for template instantiation.
  • remove unnecessary check
Oct 26 2022, 10:29 AM · Restricted Project, Restricted Project
ychen updated the summary of D136744: [Clang] perform "maximum TLS alignment" check for template instantiation.
Oct 26 2022, 12:53 AM · Restricted Project, Restricted Project
ychen requested review of D136744: [Clang] perform "maximum TLS alignment" check for template instantiation.
Oct 26 2022, 12:53 AM · Restricted Project, Restricted Project

Oct 25 2022

ychen updated the diff for D136545: [Clang] use non-instantiated function declaration for constraints partial ordering.
  • rebase
Oct 25 2022, 10:14 AM · Restricted Project, Restricted Project

Oct 24 2022

ychen added inline comments to D136545: [Clang] use non-instantiated function declaration for constraints partial ordering.
Oct 24 2022, 10:38 PM · Restricted Project, Restricted Project
ychen retitled D136545: [Clang] use non-instantiated function declaration for constraints partial ordering from [Clang] use non-template function declaration for constraints partial ordering to [Clang] use non-instantiated function declaration for constraints partial ordering.
Oct 24 2022, 10:36 PM · Restricted Project, Restricted Project
ychen added a comment to D136545: [Clang] use non-instantiated function declaration for constraints partial ordering.

LGTM, thanks for picking it up! I wonder how much effect this has on compilation times given that SubsumptionCache caches subsumption by the Decl * pair...

Oct 24 2022, 10:35 PM · Restricted Project, Restricted Project
ychen updated the diff for D136545: [Clang] use non-instantiated function declaration for constraints partial ordering.
  • do the same when 1. taking the address of a non-template function (with a test) 2. computing SMF eligibility (unfortunately it's hard to compose a test, suggestions are appreciated).
  • restore the removed test case
Oct 24 2022, 10:35 PM · Restricted Project, Restricted Project
ychen added inline comments to D136533: [clang] Fix missing diagnostic of declaration use when accessing TypeDecls through typename access.
Oct 24 2022, 12:50 PM · Restricted Project, Restricted Project, Restricted Project
ychen added a comment to D136120: [Clang] follow-up D128745, remove ClangABICompat checks.

ping?

Oct 24 2022, 11:53 AM · Restricted Project, Restricted Project

Oct 23 2022

ychen added a comment to D136533: [clang] Fix missing diagnostic of declaration use when accessing TypeDecls through typename access.

Looks straightforward to me with one suggestion.

Oct 23 2022, 11:35 AM · Restricted Project, Restricted Project, Restricted Project

Oct 22 2022

ychen updated the diff for D136545: [Clang] use non-instantiated function declaration for constraints partial ordering.
  • add a release note.
Oct 22 2022, 10:44 PM · Restricted Project, Restricted Project
ychen added inline comments to D136545: [Clang] use non-instantiated function declaration for constraints partial ordering.
Oct 22 2022, 9:42 PM · Restricted Project, Restricted Project
ychen requested review of D136545: [Clang] use non-instantiated function declaration for constraints partial ordering.
Oct 22 2022, 9:30 PM · Restricted Project, Restricted Project
ychen committed rGc9447c62966e: [Clang] fold expression is considered atomic during constraints normalization (authored by ychen).
[Clang] fold expression is considered atomic during constraints normalization
Oct 22 2022, 8:49 PM · Restricted Project, Restricted Project

Oct 19 2022

ychen committed rG63512592e97d: [lit] fix a error when using --show-used-features (authored by ychen).
[lit] fix a error when using --show-used-features
Oct 19 2022, 10:57 AM · Restricted Project, Restricted Project
ychen committed rG24c6ea917cfd: [JMCInstrument] rename ELF section name from ".just.my.code" to ".data.just.my. (authored by ychen).
[JMCInstrument] rename ELF section name from ".just.my.code" to ".data.just.my.
Oct 19 2022, 10:50 AM · Restricted Project, Restricted Project

Oct 18 2022

ychen committed rG13d6a57cbe27: [Clang] constraints partial ordering should work with deduction guide (authored by ychen).
[Clang] constraints partial ordering should work with deduction guide
Oct 18 2022, 5:31 PM · Restricted Project, Restricted Project
ychen added inline comments to D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.
Oct 18 2022, 3:30 PM · Restricted Project, Restricted Project
ychen committed rG340eac01f7da: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained… (authored by ychen).
[C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained…
Oct 18 2022, 11:59 AM · Restricted Project, Restricted Project
ychen closed D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.
Oct 18 2022, 11:59 AM · Restricted Project, Restricted Project
ychen added a comment to D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.

@mizvekov Thanks for the review and provided valuable feedback.

Oct 18 2022, 11:48 AM · Restricted Project, Restricted Project
ychen committed rG6bca52be0349: [Clang] update cxx_dr_status.html by running make_cxx_dr_status (authored by ychen).
[Clang] update cxx_dr_status.html by running make_cxx_dr_status
Oct 18 2022, 11:46 AM · Restricted Project, Restricted Project
ychen closed D136133: [Clang] update cxx_dr_status.html by running make_cxx_dr_status.
Oct 18 2022, 11:45 AM · Restricted Project, Restricted Project
ychen updated the diff for D136133: [Clang] update cxx_dr_status.html by running make_cxx_dr_status.
  • DR2565 is fully implemented.
Oct 18 2022, 11:27 AM · Restricted Project, Restricted Project
ychen updated the diff for D136120: [Clang] follow-up D128745, remove ClangABICompat checks.
  • update Release notes
  • remove obsolete CodeGen tests which was used to test ClangABICompat checks, similar Sema tests are already in place.
Oct 18 2022, 11:22 AM · Restricted Project, Restricted Project
ychen added inline comments to D136133: [Clang] update cxx_dr_status.html by running make_cxx_dr_status.
Oct 18 2022, 10:57 AM · Restricted Project, Restricted Project
ychen added a comment to D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.

Is the pre-commit CI failure here related to the patch?

Oct 18 2022, 10:46 AM · Restricted Project, Restricted Project
ychen updated the diff for D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.
  • rebase
Oct 18 2022, 9:55 AM · Restricted Project, Restricted Project

Oct 17 2022

ychen updated the diff for D136133: [Clang] update cxx_dr_status.html by running make_cxx_dr_status.
  • rebase
Oct 17 2022, 11:35 PM · Restricted Project, Restricted Project
ychen requested review of D136133: [Clang] update cxx_dr_status.html by running make_cxx_dr_status.
Oct 17 2022, 11:28 PM · Restricted Project, Restricted Project
ychen committed rG4e2a629c7238: [Clang] add DR tests for D128745 (authored by ychen).
[Clang] add DR tests for D128745
Oct 17 2022, 11:26 PM · Restricted Project, Restricted Project
ychen retitled D136120: [Clang] follow-up D128745, remove ClangABICompat checks from [Clang] follow-up D128745, remove all ClangABICompat checks to [Clang] follow-up D128745, remove ClangABICompat checks.
Oct 17 2022, 5:13 PM · Restricted Project, Restricted Project
ychen added a reviewer for D136120: [Clang] follow-up D128745, remove ClangABICompat checks: Restricted Project.
Oct 17 2022, 5:11 PM · Restricted Project, Restricted Project
ychen requested review of D136120: [Clang] follow-up D128745, remove ClangABICompat checks.
Oct 17 2022, 5:11 PM · Restricted Project, Restricted Project
ychen added a comment to D134507: [Clang] add missing ClangABICompat check.

Per further discussions in D128745, this is not needed.

I agree that the code change is not needed. I think it is worth keeping the test though (modified to verify the expected ambiguity).

Oct 17 2022, 12:31 PM · Restricted Project, Restricted Project
ychen added inline comments to D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.
Oct 17 2022, 12:12 PM · Restricted Project, Restricted Project
ychen updated the diff for D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.
  • use getTemplateArgs
Oct 17 2022, 12:12 PM · Restricted Project, Restricted Project

Oct 14 2022

ychen added inline comments to D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.
Oct 14 2022, 12:59 PM · Restricted Project, Restricted Project
ychen updated the diff for D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.
  • skip non-dependent NTTP comparison because they're equivalent (match GCC)
Oct 14 2022, 11:04 AM · Restricted Project, Restricted Project

Oct 13 2022

ychen added a comment to D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.

I reached out to the GCC author to confirm that the committee acknowledges that there should be a change to temp.func.order p6.2.1, but no consensus on what changes to make [3].

A more accurate description is that some changes elsewhere to overload resolution are probably needed, but no solution has been developed sufficiently.

Oct 13 2022, 2:00 PM · Restricted Project, Restricted Project
ychen updated the summary of D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.
Oct 13 2022, 1:58 PM · Restricted Project, Restricted Project
ychen abandoned D134507: [Clang] add missing ClangABICompat check.

Per further discussions in D128745, this is not needed.

Oct 13 2022, 11:56 AM · Restricted Project, Restricted Project

Oct 12 2022

ychen added a comment to D128745: [c++] implements DR692, DR1395 and tentatively DR1432, about partial ordering of variadic template partial specialization or function template.

Was this change in LLVM 15, or is it still unreleased?

Oct 12 2022, 10:02 AM · Restricted Project, Restricted Project

Oct 11 2022

ychen added a comment to D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.

@mizvekov it turns out I don't need that code anymore. Thanks.

Oct 11 2022, 11:55 PM · Restricted Project, Restricted Project
ychen updated the diff for D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.
  • remove dead code.
Oct 11 2022, 11:53 PM · Restricted Project, Restricted Project
ychen accepted D135045: [Frontend] Recognize environment variable SOURCE_DATE_EPOCH.

LGTM.

Oct 11 2022, 6:22 PM · Restricted Project, Restricted Project
ychen added a comment to D128745: [c++] implements DR692, DR1395 and tentatively DR1432, about partial ordering of variadic template partial specialization or function template.

New flag or not, as long as we allow users to use the old behavior, it is already fracturing the ecosystem. Do you mean (1) we shouldn't give the user the choices or (2) we allow users to use the old behavior but only for a few releases and then remove the flag? I think (1) is a little bit harsh but I would not say it is disruptive. (2) is more user-friendly.

(1) has been the default absent information to indicate that the new behaviour is not ready for deployment (because it would cause widespread disruption). To consider alternatives would require information about the nature of the deployment difficulties.

Oct 11 2022, 5:06 PM · Restricted Project, Restricted Project
ychen added a comment to D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.

Hi @mizvekov , after D135088, this patch is ready.

Oct 11 2022, 4:47 PM · Restricted Project, Restricted Project
ychen added inline comments to D135045: [Frontend] Recognize environment variable SOURCE_DATE_EPOCH.
Oct 11 2022, 11:31 AM · Restricted Project, Restricted Project
ychen added a comment to D135045: [Frontend] Recognize environment variable SOURCE_DATE_EPOCH.

Looks good to me except for one nit. And the test still fails on Windows for some reason.

Oct 11 2022, 10:48 AM · Restricted Project, Restricted Project
ychen committed rG2c94f75f00af: [clang-format] update --files help description (authored by ychen).
[clang-format] update --files help description
Oct 11 2022, 10:25 AM · Restricted Project, Restricted Project
ychen closed D135115: [clang-format] update --files help description.
Oct 11 2022, 10:25 AM · Restricted Project, Restricted Project, Restricted Project

Oct 6 2022

ychen added a comment to D135115: [clang-format] update --files help description.

Except for the @<file> part. (Which also isn't handles by clang-format, or is it?)

Oct 6 2022, 10:11 AM · Restricted Project, Restricted Project, Restricted Project

Oct 5 2022

ychen added inline comments to D135045: [Frontend] Recognize environment variable SOURCE_DATE_EPOCH.
Oct 5 2022, 7:20 PM · Restricted Project, Restricted Project
ychen added inline comments to D135045: [Frontend] Recognize environment variable SOURCE_DATE_EPOCH.
Oct 5 2022, 5:46 PM · Restricted Project, Restricted Project
ychen updated the diff for D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.
Oct 5 2022, 1:56 PM · Restricted Project, Restricted Project
ychen updated the diff for D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.
  • rebase
Oct 5 2022, 1:52 PM · Restricted Project, Restricted Project
ychen updated the diff for D128750: [C++20] Implement P2113R0: Changes to the Partial Ordering of Constrained Functions.
  • rebase
Oct 5 2022, 1:46 PM · Restricted Project, Restricted Project
ychen added inline comments to D135045: [Frontend] Recognize environment variable SOURCE_DATE_EPOCH.
Oct 5 2022, 11:28 AM · Restricted Project, Restricted Project
ychen abandoned D134772: [Clang] Make constraints of auto part of NTTP instead of AutoType.

D135088 was landed instead.

Oct 5 2022, 10:23 AM · Restricted Project, Restricted Project

Oct 4 2022

ychen updated the diff for D135115: [clang-format] update --files help description.
  • make corresponding change in the commandline
Oct 4 2022, 2:02 PM · Restricted Project, Restricted Project, Restricted Project
ychen updated the diff for D135115: [clang-format] update --files help description.
  • address comments
Oct 4 2022, 1:13 PM · Restricted Project, Restricted Project, Restricted Project
ychen committed rG5d69937b9f9c: [Clang] make canonical AutoType constraints-free (authored by ychen).
[Clang] make canonical AutoType constraints-free
Oct 4 2022, 11:56 AM · Restricted Project, Restricted Project
ychen closed D135088: [Clang] make canonical AutoType constraints-free.
Oct 4 2022, 11:56 AM · Restricted Project, Restricted Project
ychen added a comment to D128745: [c++] implements DR692, DR1395 and tentatively DR1432, about partial ordering of variadic template partial specialization or function template.

Is it known what gcc and Microsoft maintainers are going to do with these DRs? I don't see any recent changes in gcc, but the following is interesting...

Oct 4 2022, 11:54 AM · Restricted Project, Restricted Project
ychen added a comment to D128745: [c++] implements DR692, DR1395 and tentatively DR1432, about partial ordering of variadic template partial specialization or function template.

I think the consensus is some flag is needed to put it back to legacy behavior just in case.

I am not sure there is strong consensus to add a flag "just in case". Historically, many DRs had effects on overload resolution (via SFINAE or otherwise). Once we start adding flags "just in case", we might end up having a lot of them. These flags can exacerbate fracturing of the ecosystem.

Oct 4 2022, 11:33 AM · Restricted Project, Restricted Project