From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr1-x42a.google.com (mail-wr1-x42a.google.com [IPv6:2a00:1450:4864:20::42a]) by sourceware.org (Postfix) with ESMTPS id 9EFCC38515C5 for ; Mon, 31 Jan 2022 17:01:11 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 9EFCC38515C5 Received: by mail-wr1-x42a.google.com with SMTP id u15so26716373wrt.3 for ; Mon, 31 Jan 2022 09:01:11 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to; bh=pG5iTo3FLAQL5cTAVeYP9SAv/Dh/9ZCUsAXZh3g2u0A=; b=N5PpCb3NXQ7iHOmjpiCXQoNkfJbEOV5p8LGnLapk1ZMmzEPU+gDdFG6KJogO/ZF8Cs TwIDslknUakeh5RFd/zn27LahRlnkh4S2GVHj3M0H7gWRdE5BZ9OAYk8zzAZ6885RHB2 vYd/wjHTYZ9Tl0YlO9TXOgFwkzjtHh2NUzHPWi/7+ycbbaB6VGrdqbx4ZvwFcWv+C/vB XE9dGcxPaeQ1+s6M+zW2Tb1DNEqQELnJAR37fK1J8cYvYnRKWii8kPcdyf/8JjR+2djH rQXbTnU4TPHexKbVV7XmAGwGrJRJHNKf0RCorDbFFFBMmYCIUz9feRpeQ0cnep8Od20b J9MA== X-Gm-Message-State: AOAM530PFV6UxeLIwdAtX4eIZxojFaQfXxP4O7ffPAHRkHU+9yR2hWDc gHTWHJEWxLhV/0RiIiYC8M68nvRa3qzc9inLyPSPrEfL X-Google-Smtp-Source: ABdhPJxt2dxifQzvITWASmIfDn7ZmUMk9ZRaJRvebLN/agG/mDt/0QUBGV9gv2Q7OfNJuBCjdfYUohYQJMZv2q4yoNo= X-Received: by 2002:adf:d1ed:: with SMTP id g13mr18552551wrd.477.1643648469785; Mon, 31 Jan 2022 09:01:09 -0800 (PST) MIME-Version: 1.0 References: <07c3e8cb-458e-2ec9-a0fd-0ee3cbeaf8d8@hesbynett.no> In-Reply-To: From: Hirrolot Date: Mon, 31 Jan 2022 23:00:58 +0600 Message-ID: Subject: Fwd: Prohibit use of break/continue in a statement To: gcc-help@gcc.gnu.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.0 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_FROM, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gcc-help@gcc.gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gcc-help mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 31 Jan 2022 17:01:14 -0000 ---------- Forwarded message --------- From: Hirrolot Date: Mon, Jan 31, 2022 at 10:59 PM Subject: Re: Prohibit use of break/continue in a statement To: David Brown Ah, actually, the implementation is rather involved. I tried to explain it in my blog post [1]. The section "Pattern matching" should give you a clear sense of what is happening. Yes, `#define` directives for `break` and `continue` should work, but defining and undefining them every time would be a true hassle. [1] https://hirrolot.github.io/posts/compiling-algebraic-data-types-in-pure-c99.html