Remove experimental continuation support (#2776)

Removes `__continuation`, `__await`, and `__run`.

In part here, the discussion was that while the feature had been useful for validating the early explorer design, it's no longer needed for that role as the explorer is now quite robust. Continuations have been experimental and, at this point, don't have an owner pushing to a proposal.

The triggering factor is that, as we push to address fuzzer issues, I ran into a crash bug in this code; basically, `fn Main() -> i32 { __await; return 0; }`. When I mentioned this, the reaction seemed to trend towards removal of the feature.
This commit is contained in:
Jon Ross-Perkins
2023-04-19 14:22:43 -07:00
committed by GitHub
parent 60059ff726
commit 39155d34ae
49 changed files with 13 additions and 2665 deletions
-4
View File
@@ -300,7 +300,6 @@ void Expression::Print(llvm::raw_ostream& out) const {
case ExpressionKind::StringLiteral:
case ExpressionKind::StringTypeLiteral:
case ExpressionKind::TypeTypeLiteral:
case ExpressionKind::ContinuationTypeLiteral:
case ExpressionKind::ValueLiteral:
PrintID(out);
break;
@@ -338,9 +337,6 @@ void Expression::PrintID(llvm::raw_ostream& out) const {
case ExpressionKind::TypeTypeLiteral:
out << "type";
break;
case ExpressionKind::ContinuationTypeLiteral:
out << "Continuation";
break;
case ExpressionKind::FunctionTypeLiteral:
case ExpressionKind::StructLiteral:
case ExpressionKind::ArrayTypeLiteral: