erichkeane added a comment.

In D126907#3584555 <https://reviews.llvm.org/D126907#3584555>, @ChuanqiXu wrote:

> I finally found some time to look at the crash. Although I haven't get an 
> idea, I found it crash at the following one too:
>
>   template <typename T>
>   concept Constraint = true;
>   
>   template <typename... Signatures>
>   class completion_handler_async_result {
>   public:
>       template <typename Initiation, Constraint RawCompletionToken>
>       static void initiate(Initiation&& initiation, RawCompletionToken&& 
> token);
>   };
>   
>   template <typename... Signatures>
>   concept Constraint2 =
>       requires() {
>           completion_handler_async_result<Signatures...>::initiate(0, 0);
>       };
>   
>   template <typename T>
>   void use(int F)
>       requires Constraint2<int>
>   {}
>
> The crash log is:
>
>   clang/lib/AST/ExprConstant.cpp:15083: bool 
> clang::Expr::EvaluateAsConstantExpr(clang::Expr::EvalResult&, const 
> clang::ASTContext&, clang::Expr::ConstantExprKind) const: Assertion 
> `!isValueDependent() && "Expression evaluator can't be called on a dependent 
> expression."' failed.
>
> I am not sure if they are the same problem.

Yep, that is a different crash for the same reason (mismatched 'depth' of the 
template parameters).  I saw that a few times as well, but I believe anything 
we do to solve the first will solve this as well.  I haven't had a chance all 
week to get back to this, but hopefully will be able to work more on it by EOW.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D126907/new/

https://reviews.llvm.org/D126907

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to