]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
gccrs: compile: bail on labelled block
authorJakub Dupak <dev@jakubdupak.com>
Mon, 16 Oct 2023 13:33:19 +0000 (15:33 +0200)
committerArthur Cohen <arthur.cohen@embecosm.com>
Tue, 16 Jan 2024 18:09:21 +0000 (19:09 +0100)
gcc/rust/ChangeLog:

* backend/rust-compile-expr.cc (CompileExpr::visit): Bail on labelled block.

Signed-off-by: Jakub Dupak <dev@jakubdupak.com>
gcc/rust/backend/rust-compile-expr.cc

index 2e4bd57b3778b1c60780f024aa446056e8f84202..8e64e572bf2eeaaa10689cd6790edb044fbc63c3 100644 (file)
@@ -352,6 +352,12 @@ CompileExpr::visit (HIR::IfExprConseqElse &expr)
 void
 CompileExpr::visit (HIR::BlockExpr &expr)
 {
+  if (expr.has_label ())
+    {
+      rust_error_at (expr.get_locus (), "labeled blocks are not supported");
+      return;
+    }
+
   TyTy::BaseType *block_tyty = nullptr;
   if (!ctx->get_tyctx ()->lookup_type (expr.get_mappings ().get_hirid (),
                                       &block_tyty))