From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-vs1-xe36.google.com (mail-vs1-xe36.google.com [IPv6:2607:f8b0:4864:20::e36]) by sourceware.org (Postfix) with ESMTPS id 717EF385841F for ; Tue, 4 Oct 2022 12:30:01 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 717EF385841F Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=embecosm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=embecosm.com Received: by mail-vs1-xe36.google.com with SMTP id p11so5847028vsr.7 for ; Tue, 04 Oct 2022 05:30:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=embecosm.com; s=google; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date; bh=zmN5YAWHHXbfC4NwPDYgYcdj19P81hQhz+EXUqU6cRA=; b=ZEnELmjuuiFryDd0nWoAHl8BJp+nKJ5QBDOw091D3twCW1bfaWh48Gc7k1CGJURYjD E5PRE8gxkTNk1upnwb5J0itv3NAsnJJd3q0vJAlY1pQQQoXO6/FMY4MOZk6jxJzxqGlp HrZOTT6aI5iCLqost0FmWfqwxL3Ch6QF9BQe++NC+ZdRq5mVKUac+XNQPZcOGiusDrZr b/88F6oMmabP2DGQENsRLvTfMOUYjPqDnEXGllaVRbP/s0KF/cdYtuhR6W+HCOlomE1z SH6PjRf2EB9+TZ0uSJyk52yQRSJN7lpMafYQ5nCAanrQE+7Ic4EuQBlI+7OWHpCgBHsG o1mA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date; bh=zmN5YAWHHXbfC4NwPDYgYcdj19P81hQhz+EXUqU6cRA=; b=d2y7/wT9oWLxDBTUXch2tEtXGCW3y74RMk6lx+3r57qOG1qVUOUu9AsiD2FMeTmK8I ZgPWv4sXhQSAEqZIGLBp8a/PHVQQILat9RuROa2VHN4jRljeaKvrfi0a3WqsfsEPMNjs Ykpc61afZBYbayO01hQTfpITTe9D4tXHRRV8K7torsXaksU16hcDtKh5hVZ1Af2p+nLL fpVvY3erXxsIowdmvhiNm3+imbsOTFyqV0JXJVTW06aT274GmrtMM20Z0PazCQ6j8hKU HHfRHLQn1+XwXw4OgoZh4tnboorotLu5F68HWITQCOdOD5oczUgz+8eFuTaJT6Fd5rc+ FJOQ== X-Gm-Message-State: ACrzQf0JM6F/jvjQ1npaoabxeFZWVe5wA0q6C2mXiXCn99WjAaK0Iiry RF4nX+mfMivmtwldZW30UxYPc5NukKxq1ZcJvneZ/A== X-Google-Smtp-Source: AMsMyM6r9RaNdu5iH1E8XesOejbB8SyGqFI5AVtu8U6zphnkFkVxJjWTGUk2bmAMtfw8sCAiGSXwNcGYd/RIa6bOgKQ= X-Received: by 2002:a67:f853:0:b0:3a6:6cb7:f705 with SMTP id b19-20020a67f853000000b003a66cb7f705mr4058765vsp.48.1664886600764; Tue, 04 Oct 2022 05:30:00 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Philip Herron Date: Tue, 4 Oct 2022 13:29:49 +0100 Message-ID: Subject: Re: Rust front-end To: gcc Mailing List Cc: gcc-rust@gcc.gnu.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Hi everyone, As the cut-off for merging is coming up in November, quite a few of our patches have not been reviewed yet. There are a few main issues that have been raised so far, and we are fixing those at the moment in preparation for version 3 of the patches. Is there anything else we can do to make reviewing the rest of the patches easier? Thanks --Phil On Mon, 11 Jul 2022 at 16:02, David Edelsohn wrote: > > On Mon, Jun 27, 2022 at 10:52 AM Philip Herron > wrote: > > > > Hi everyone, > > > > Since November 2020, I've worked full-time on the Rust front-end for > > GCC, thanks to Open Source Security, Inc and Embecosm. As a result, I > > am writing to this mailing list to seek feedback from the collective > > experience here early to plan a path for upstreaming the front-end > > into GCC. > > > > 1. What is the actual process of merging a prominent feature like this upstream > > - How do we review this? > > - Do we create a "mega-commit" patch > > - How long should we expect this review process to take > > - Is there anything we can do to make this easier? > > > > 2. What sort of quality does the GCC community expect? > > - I think it is essential that we can compile valid test cases from > > a testsuite and real projects before merging. > > - It seems reasonable that our error handling may not be 100% but be > > expected to improve over time > > - Upon merging, can features like Rust be marked as experimental > > > > 3. How do GCC releases work? > > - If you miss a window can we still merge code into the front-end? > > - Can we merge without a borrow checker and backport this in the future? > > > > 4. What about the possibility of merging sooner rather than later, > > which would help the project gain interest through the increased > > visibility of it as part of the GCC family. > > - Does this still allow for development churn, or will it cause friction? > > > > 5. Does anyone have prior experience or advice they could give us? > > > > For some context, my current project plan brings us to November 2022 > > where we (unexpected events permitting) should be able to support > > valid Rust code targeting Rustc version ~1.40 and reuse libcore, > > liballoc and libstd. This date does not account for the borrow checker > > feature and the proc macro crate, which we have a plan to implement, > > but this will be a further six-month project. > > > > Regarding patch management, we currently do our development on GitHub: > > https://github.com/Rust-GCC/gccrs; this means we can integrate our > > issue tracking with the official Rust project by linking back to the > > official Rust project's RFC issues, for example. The downside is that > > when someone uses our compiler and hits an ICE, they will be directed > > to the GCC Bugzilla, which is correct but can lead to a mismatch in > > issue tracking. Nevertheless, I think it's essential to have the > > GitHub link here to integrate with the broader Rust community. I > > believe we can triage Rust issues on the Bugzilla and raise associated > > ones on Github to manage this. > > > > From my perspective as the lead on this front-end, we are currently > > under heavy development, so this means a fair amount of code churn > > still, and I don't see this changing until we can successfully compile > > the libcore crate later this year. Although I would love to see us > > merged into GCC 13, I want to make sure this project is a success for > > everyone, and this might mean pushing back to the next release window > > to make sure this is manageable to produce a quality front-end to sit > > alongside the others. > > > > I wish to thank you those in the GCC developer community, who have > > inspired me and helped me navigate my journey to this point in time. > > > > - Thomas Schwinge > > - Mark Wielaard > > - Tom Tromey > > - Ian Lance Taylor > > - David Edelsohn > > - David Malcolm > > - Martin Jambor > > Congratulations! The GCC Steering Committee has voted to accept the > contribution of the Rust Frontend (aka GCC Rust) to GCC. Please work > with the GCC Global Reviewers and GCC Release Managers for technical > review and technical approval of the patches. We look forward to > including a preliminary, beta version of GCC Rust in GCC 13 as a > non-default language. > > Thanks, David