Page MenuHomePhabricator

saar.raz (Saar Raz)
User

Projects

User does not belong to any projects.

User Details

User Since
Nov 22 2017, 6:02 AM (78 w, 2 d)

Recent Activity

Mon, May 13

saar.raz added a comment to D40381: Parse concept definition.

@rsmith?

Mon, May 13, 12:06 AM · Restricted Project

Sun, May 5

saar.raz added a comment to D40381: Parse concept definition.

Awesome! I do not have commit permissions though, so can you do the actual commit?

Sun, May 5, 1:49 PM · Restricted Project
saar.raz updated the diff for D40381: Parse concept definition.
  • Address final CR comments by rsmith
Sun, May 5, 1:46 PM · Restricted Project

Sat, May 4

saar.raz added a comment to D40381: Parse concept definition.

@rsmith are we done with CR on this?

Sat, May 4, 9:53 AM · Restricted Project

Sat, Apr 27

saar.raz retitled D44352: [Concepts] Type Constraints from [Concepts] Constrained template parameters to [Concepts] Type Constraints.
Sat, Apr 27, 6:28 PM · Restricted Project
saar.raz updated the diff for D44352: [Concepts] Type Constraints.
  • removed old handling of constrained-parameters for type-constraints
  • use template-id annotations during parsing to avoid tentative parses and set the ground for placeholder type-constraints
  • add source information to the new TypeConstraint class, which shares a base class (ConceptReference) with ConceptSpecializationExpr
  • change TemplateTypeParmDecl to not return true for wasDeclaredWithTypename if a type-constraint was present (and update places that assumed only 'class' or 'typename' were possible)
Sat, Apr 27, 6:28 PM · Restricted Project

Apr 22 2019

saar.raz updated the diff for D43357: [Concepts] Function trailing requires clauses.
  • Address CR comment
  • Adjust to new getAssociatedConstraints interface
  • Add destructor and conversion operator tests
Apr 22 2019, 4:19 PM · Restricted Project
saar.raz updated the diff for D41910: [Concepts] Constrained partial specializations and function overloads..

Renamed PartSpec to PartSpec2 (CR)

Apr 22 2019, 11:52 AM · Restricted Project
saar.raz updated the diff for D41910: [Concepts] Constrained partial specializations and function overloads..
  • Fixed importing of ACs when importing partial specs.
  • Adjust to getAssociatedConstraints interface change
Apr 22 2019, 11:46 AM · Restricted Project
saar.raz updated the diff for D41569: [Concepts] Constraint enforcement and diagnostics.

Adjusted to changes in getAssociatedConstraints interface

Apr 22 2019, 10:38 AM · Restricted Project
saar.raz updated the diff for D41284: [Concepts] Associated constraints infrastructure..
  • Address CR comments by rsmith
    • Remove obsolete TODOs
    • Fix redeclaration checking
    • Change getAssociatedConstraints interface
  • Add requires clause to ASTNodeTraverser
Apr 22 2019, 8:22 AM · Restricted Project

Apr 21 2019

saar.raz updated the diff for D40381: Parse concept definition.

Address CR comments by rsmith

Apr 21 2019, 10:12 AM · Restricted Project

Apr 20 2019

saar.raz created D60939: [Concepts] Delayed Constraint Substitution.
Apr 20 2019, 5:14 PM · Restricted Project
saar.raz added a child revision for D50360: [Concepts] Requires Expressions: D60939: [Concepts] Delayed Constraint Substitution.
Apr 20 2019, 5:14 PM · Restricted Project
saar.raz updated the diff for D50360: [Concepts] Requires Expressions.
  • Remove #ifs from test
  • Updated test diagnostics
Apr 20 2019, 1:56 PM · Restricted Project
saar.raz updated the diff for D43357: [Concepts] Function trailing requires clauses.
  • Remove #if from test
Apr 20 2019, 12:50 PM · Restricted Project
saar.raz updated the diff for D50360: [Concepts] Requires Expressions.
  • Rebase onto trunk
  • Fixed ignoring of ScopeSpecifier in constrained parameter in compound requirements
  • Fixed incorrect substitution and type deduction into constrained parameter return type requirement (depth was not being considered)
  • Fix incorrect check for unevaluated context for requires expr local parameters.
  • Added short-circuiting to the substitution-satisfaction check
  • Disallow plain 'auto' in return type requirement
  • Fixed bug where diagnosed but successful substitution would count as valid
  • Add non-SFINAE CodeSynthesisContext to nested requirement constraints check
  • Remove a shortcut 'if' in compound requirements which was non-conforming
  • Split requires expr parameter and body scopes
  • Add missing CorrectDelayedTyposInExpr
  • Add RequiresBodyDecl to switch where it was missing
  • Predefine __cpp_concepts when concepts are activated
  • Deal with cases where substitution failed but no diagnostic is available
Apr 20 2019, 9:50 AM · Restricted Project

Apr 18 2019

saar.raz updated the diff for D44352: [Concepts] Type Constraints.
  • Fixed bad ordering of associated constraints
  • Fixed ignoring of ScopeSpecifier in constrained parameters
  • Adjustments for template template parameter handling
  • Fixed constrained template template parameter and argument handling
Apr 18 2019, 12:32 PM · Restricted Project

Apr 13 2019

saar.raz updated the diff for D43357: [Concepts] Function trailing requires clauses.
  • Add diagnostic explaining the unintuitive subsumption rules when user might be relying on expression equivalence for odering
  • Fixed incorrect checking of trailing requires clause subsumption
  • Fixed missing conversion constraint checking
  • Fixed constraint checking in function templates to recognize function parameters
  • Address CR comments by rsmith
    • Move TrailingRequiresClause to ExtInfo
    • Fixed diagnostic styling
    • Correct checking of constrained virtual functions
    • Small formatting fixes
    • Parse constraint-logical-or-expressions in requires clauses
    • Parse the requires clause as part of the init-declarator, member-declarator or function-definition
    • No dirty diagnostic suppression when trying to parse switched-order trailing requires and return type
Apr 13 2019, 1:00 PM · Restricted Project
saar.raz updated the diff for D41910: [Concepts] Constrained partial specializations and function overloads..

Fixed bug in normalization substitution into CSEs
Rebase onto trunk

Apr 13 2019, 4:38 AM · Restricted Project
saar.raz updated the diff for D41569: [Concepts] Constraint enforcement and diagnostics.

Rebase onto trunk

Apr 13 2019, 3:39 AM · Restricted Project

Apr 12 2019

saar.raz updated the diff for D41284: [Concepts] Associated constraints infrastructure..

Rebase onto trunk

Apr 12 2019, 4:56 PM · Restricted Project
saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.

Fix wrong patch uploaded

Apr 12 2019, 4:08 PM · Restricted Project
saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.

Add new CodeSynthesisContexts to switch where they were missing

Apr 12 2019, 4:04 PM · Restricted Project
saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.

Moved from getLocStart, getLocEnd to getBeginLoc, getEndLoc. Rebase onto master/trunk.

Apr 12 2019, 1:19 AM · Restricted Project

Apr 10 2019

Herald added a project to D41217: [Concepts] Concept Specialization Expressions: Restricted Project.
Apr 10 2019, 2:06 PM · Restricted Project

Apr 9 2019

saar.raz added a comment to D40381: Parse concept definition.

Only the TemplatedDecl issue remains, all other comments have been addressed and we're rebased onto master.
@rsmith please reply to the last comment, and lets finally start merging these :)

Apr 9 2019, 4:34 PM · Restricted Project
saar.raz commandeered D40381: Parse concept definition.
Apr 9 2019, 4:29 PM · Restricted Project
saar.raz updated the diff for D40381: Parse concept definition.

Address most of rsmith's CR comments, rebase onto trunk

Apr 9 2019, 4:24 PM · Restricted Project
saar.raz added inline comments to D40381: Parse concept definition.
Apr 9 2019, 1:33 PM · Restricted Project

Aug 18 2018

saar.raz added inline comments to D41284: [Concepts] Associated constraints infrastructure..
Aug 18 2018, 10:34 PM · Restricted Project
saar.raz added inline comments to D41284: [Concepts] Associated constraints infrastructure..
Aug 18 2018, 10:09 PM · Restricted Project
saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.
  • Address CR comments - add FoundDecl tracking, instantiationdependent calculation, display non-constant expression diagnostic notes
Aug 18 2018, 5:39 AM · Restricted Project
saar.raz added inline comments to D41284: [Concepts] Associated constraints infrastructure..
Aug 18 2018, 2:30 AM · Restricted Project
saar.raz added inline comments to D41217: [Concepts] Concept Specialization Expressions.
Aug 18 2018, 1:31 AM · Restricted Project
saar.raz added inline comments to D41217: [Concepts] Concept Specialization Expressions.
Aug 18 2018, 1:18 AM · Restricted Project

Aug 17 2018

saar.raz updated the diff for D41569: [Concepts] Constraint enforcement and diagnostics.
  • Adjusted to new CodeSynthesisContexts, added tests for them.
Aug 17 2018, 3:22 PM · Restricted Project
saar.raz updated the diff for D41284: [Concepts] Associated constraints infrastructure..
  • Fix bad reference to getRequiresClause on TemplateDecl in assertion
Aug 17 2018, 3:15 PM · Restricted Project
saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.
  • Fix bad ArgsAsWritten assertion, add missing null initializer in ConceptSpecializationExpr.
Aug 17 2018, 3:10 PM · Restricted Project

Aug 15 2018

saar.raz updated the diff for D41284: [Concepts] Associated constraints infrastructure..
  • Address comments by rsmith, mainly removing associated constraints caching and instead returning a smallvector of constraint expressions from getAssociatedConstraints.
Aug 15 2018, 11:10 AM · Restricted Project

Aug 13 2018

saar.raz added inline comments to D41217: [Concepts] Concept Specialization Expressions.
Aug 13 2018, 2:05 PM · Restricted Project
saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.

Address Arthur's comments, add missing CorrectDelayedTyposInExpr

Aug 13 2018, 1:32 PM · Restricted Project

Aug 11 2018

saar.raz added inline comments to D41217: [Concepts] Concept Specialization Expressions.
Aug 11 2018, 12:29 PM · Restricted Project
saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.

Removed unused "note_in_concept_specialization" diagnostic ID.

Aug 11 2018, 3:22 AM · Restricted Project

Aug 10 2018

saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.

Address Richard's CR comments. Among other things:

  • CSEs overhauled and now store both source and converted template arguments (latter are tail-allocated), template KW location and NNS.
  • CSEs no longer violate layering - satisfaction check now moved back to CheckConceptTemplateId.
  • CodeSynthesisContexts created for both the act of checking the associated constraints of a template or the constraint expression of a concept (non-SFINAE), and for the act of substituting template arguments into a(n atomic) constraint expression (SFINAE).
  • Added more tests for cases where substitution leads to a non-SFINAE failure and emits diagnostics
  • Fixed and added test for incorrect conversion of instantiated CSE argument list.
Aug 10 2018, 5:33 PM · Restricted Project

Aug 8 2018

saar.raz updated the diff for D41910: [Concepts] Constrained partial specializations and function overloads..
  • Moved constraint checks to the end of FinishTemplateArgumentDeduction
Aug 8 2018, 11:08 AM · Restricted Project
saar.raz updated the diff for D50360: [Concepts] Requires Expressions.
  • Predefine __cpp_concepts when supported
Aug 8 2018, 11:06 AM · Restricted Project

Aug 7 2018

saar.raz updated the diff for D50360: [Concepts] Requires Expressions.
  • Deal with cases where substitution fails but no diagnostic is available
Aug 7 2018, 4:02 PM · Restricted Project
saar.raz added inline comments to D43357: [Concepts] Function trailing requires clauses.
Aug 7 2018, 1:40 PM · Restricted Project
saar.raz added inline comments to D41217: [Concepts] Concept Specialization Expressions.
Aug 7 2018, 12:22 PM · Restricted Project
saar.raz added a comment to D41217: [Concepts] Concept Specialization Expressions.

@rsmith - thanks for the responses!
Will also address the comments I haven't responded to soon.

Aug 7 2018, 12:17 PM · Restricted Project

Aug 6 2018

saar.raz created D50360: [Concepts] Requires Expressions.
Aug 6 2018, 2:16 PM · Restricted Project
saar.raz added a child revision for D44352: [Concepts] Type Constraints: D50360: [Concepts] Requires Expressions.
Aug 6 2018, 2:16 PM · Restricted Project
saar.raz updated the diff for D44352: [Concepts] Type Constraints.

Split TryParseConstrainedParameter and ParseConstrainedTemplateParameter in preparation for requries expressions.

Aug 6 2018, 1:24 PM · Restricted Project
saar.raz updated the diff for D43357: [Concepts] Function trailing requires clauses.
  • Fix bad diagnostic detection and suppression
Aug 6 2018, 12:07 PM · Restricted Project
saar.raz updated the diff for D41910: [Concepts] Constrained partial specializations and function overloads..
  • Fix bad handling of checking of deduced arguments in function templates
Aug 6 2018, 10:24 AM · Restricted Project
saar.raz updated the diff for D41910: [Concepts] Constrained partial specializations and function overloads..

Adjusted to switch to ASTTemplateArgumentListInfo

Aug 6 2018, 9:50 AM · Restricted Project

Aug 5 2018

saar.raz updated the diff for D41569: [Concepts] Constraint enforcement and diagnostics.
  • Adjusted to switch to ASTTemplateArgumentList
Aug 5 2018, 10:45 PM · Restricted Project
saar.raz updated the diff for D41284: [Concepts] Associated constraints infrastructure..
  • Consider requires clause when determining if TPL has an unexpanded pack
Aug 5 2018, 3:44 PM · Restricted Project
saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.
  • Switch to ASTTemplateArgumentListInfo, add ConstantEvaluated context when parsing constraints
Aug 5 2018, 2:49 PM · Restricted Project

May 16 2018

saar.raz updated the diff for D44352: [Concepts] Type Constraints.

Adjusted to changes in dependent patches.

May 16 2018, 3:00 PM · Restricted Project
saar.raz updated the diff for D43357: [Concepts] Function trailing requires clauses.
  • Fixed handling of empty/non-expression after trailing requires keyword.
  • Unified satisfaction check for templated/non-templated constraint exprs
May 16 2018, 2:57 PM · Restricted Project
saar.raz updated the diff for D41910: [Concepts] Constrained partial specializations and function overloads..
  • Adjusted constraint normalization to piecewise constraint substitution
  • Normalized constraints are now represented as described in the standard (a non-substituted expression along with a list of "template arguments").
May 16 2018, 2:54 PM · Restricted Project

Apr 5 2018

saar.raz updated the diff for D41569: [Concepts] Constraint enforcement and diagnostics.

Adjusted to piecewise substitution.

  • Constraint satisfaction will no longer happen for depenent CSEs (was originally needed for normalization, but not worth the trouble with the new piecewise substitution and the fact that it prevents short-circuting)
  • Constraint satisfaction checking now breaks down unsatisfied constraint exprs into atomic constraints with the ill-formed diagnostic or the substituted constraint expression for each, later consumed by the diagnostic functions.
Apr 5 2018, 5:48 PM · Restricted Project

Apr 4 2018

saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.
  • Switched to piecewise substitution of atomic constraints when evaluating constraint expressions
  • Added tests for piecewise substitution behavior
  • Removed some redundant parentheses
Apr 4 2018, 5:45 AM · Restricted Project

Mar 16 2018

saar.raz added inline comments to D41217: [Concepts] Concept Specialization Expressions.
Mar 16 2018, 11:36 PM · Restricted Project

Mar 15 2018

saar.raz updated the diff for D44352: [Concepts] Type Constraints.

Fixed test.

Mar 15 2018, 5:32 AM · Restricted Project
saar.raz updated the diff for D41569: [Concepts] Constraint enforcement and diagnostics.

Fixed another SpecializedConcept reference to NamedConcept.

Mar 15 2018, 2:29 AM · Restricted Project
saar.raz updated the diff for D41569: [Concepts] Constraint enforcement and diagnostics.

Fixed SpecializedConcept reference to NamedConcept.

Mar 15 2018, 1:58 AM · Restricted Project
saar.raz updated the diff for D41569: [Concepts] Constraint enforcement and diagnostics.

Adjusted to changes in D41217

Mar 15 2018, 12:38 AM · Restricted Project
saar.raz updated the diff for D41284: [Concepts] Associated constraints infrastructure..

Fixed reference to TemplateParams member in assertion.

Mar 15 2018, 12:06 AM · Restricted Project

Mar 14 2018

saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.

Applied missing clang-format.

Mar 14 2018, 11:52 PM · Restricted Project
saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.

Addressed most comments.

Mar 14 2018, 11:41 PM · Restricted Project
saar.raz added inline comments to D41217: [Concepts] Concept Specialization Expressions.
Mar 14 2018, 11:23 AM · Restricted Project

Mar 10 2018

saar.raz added inline comments to D40381: Parse concept definition.
Mar 10 2018, 6:03 AM · Restricted Project
saar.raz added a child revision for D41284: [Concepts] Associated constraints infrastructure.: D41569: [Concepts] Constraint enforcement and diagnostics.
Mar 10 2018, 4:31 AM · Restricted Project
saar.raz added a parent revision for D41569: [Concepts] Constraint enforcement and diagnostics: D41284: [Concepts] Associated constraints infrastructure..
Mar 10 2018, 4:31 AM · Restricted Project
saar.raz retitled D41569: [Concepts] Constraint enforcement and diagnostics from Summary: Constraint enforcement and diagnostics to [Concepts] Constraint enforcement and diagnostics.
Mar 10 2018, 4:26 AM · Restricted Project
saar.raz retitled D43357: [Concepts] Function trailing requires clauses from Function trailing requires clauses to [Concepts] Function trailing requires clauses.
Mar 10 2018, 4:25 AM · Restricted Project
saar.raz created D44352: [Concepts] Type Constraints.
Mar 10 2018, 4:14 AM · Restricted Project
saar.raz added a child revision for D43357: [Concepts] Function trailing requires clauses: D44352: [Concepts] Type Constraints.
Mar 10 2018, 4:14 AM · Restricted Project
saar.raz updated the diff for D41910: [Concepts] Constrained partial specializations and function overloads..
  • Correct handling of non-substitutable concept specialization expressions.
Mar 10 2018, 4:04 AM · Restricted Project
saar.raz updated the diff for D41569: [Concepts] Constraint enforcement and diagnostics.

Fixed crash caused by substitution of pack expansion into non-pack parameters in constraint expressions.

Mar 10 2018, 4:03 AM · Restricted Project
saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.
  • Fixed incorrect checking of atomic constraint types.
Mar 10 2018, 3:57 AM · Restricted Project
saar.raz added inline comments to D40381: Parse concept definition.
Mar 10 2018, 3:56 AM · Restricted Project

Feb 15 2018

saar.raz retitled D43357: [Concepts] Function trailing requires clauses from Function trailing requires clauses now parsed, supported in overload resolution and when calling, referencing and taking the address of functions or function templates. Does not directly affect code generation yet. to Function trailing requires clauses.
Feb 15 2018, 3:30 PM · Restricted Project
saar.raz created D43357: [Concepts] Function trailing requires clauses.
Feb 15 2018, 3:03 PM · Restricted Project
saar.raz added a child revision for D41910: [Concepts] Constrained partial specializations and function overloads.: D43357: [Concepts] Function trailing requires clauses.
Feb 15 2018, 3:03 PM · Restricted Project

Feb 11 2018

saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.
  • Addressed comments: Added semantic tests for value and template concepts, removed extra period and modified CSE ctor to fit in nicer.
Feb 11 2018, 12:36 PM · Restricted Project

Feb 3 2018

saar.raz added inline comments to D41217: [Concepts] Concept Specialization Expressions.
Feb 3 2018, 12:40 PM · Restricted Project
saar.raz updated the diff for D41284: [Concepts] Associated constraints infrastructure..

Moved function into SemaConcept.cpp.

Feb 3 2018, 11:56 AM · Restricted Project
saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.
  • Moved general concepts-related function into SemaConcept.cpp
Feb 3 2018, 10:08 AM · Restricted Project

Feb 2 2018

saar.raz updated the diff for D41569: [Concepts] Constraint enforcement and diagnostics.
  • When a conjunction constraint expression has both sides false, both sides will now be diagnosed.
Feb 2 2018, 6:11 AM · Restricted Project

Jan 10 2018

saar.raz created D41910: [Concepts] Constrained partial specializations and function overloads..
Jan 10 2018, 10:43 AM · Restricted Project
saar.raz added a child revision for D41569: [Concepts] Constraint enforcement and diagnostics: D41910: [Concepts] Constrained partial specializations and function overloads..
Jan 10 2018, 10:43 AM · Restricted Project
saar.raz updated the diff for D41569: [Concepts] Constraint enforcement and diagnostics.
  • Better handling of diagnostics in ConceptSpecializationExprs, correctly written to and read from module files.
  • Modified Error messages according to some user feedback
Jan 10 2018, 10:39 AM · Restricted Project
saar.raz updated the diff for D41284: [Concepts] Associated constraints infrastructure..
  • Fixed wrong if that would cause valid instantiated requires clauses to not be accepted.
Jan 10 2018, 10:10 AM · Restricted Project

Dec 24 2017

saar.raz updated the diff for D41217: [Concepts] Concept Specialization Expressions.

Reverted to original constraint parsing code.

Dec 24 2017, 1:27 PM · Restricted Project
saar.raz created D41569: [Concepts] Constraint enforcement and diagnostics.
Dec 24 2017, 1:13 PM · Restricted Project

Dec 17 2017

saar.raz added inline comments to D40381: Parse concept definition.
Dec 17 2017, 2:01 PM · Restricted Project