当前位置:网站首页>GCC Rust is approved to be included in the mainline code base, or will meet you in GCC 13
GCC Rust is approved to be included in the mainline code base, or will meet you in GCC 13
2022-07-31 01:37:00 【Wanli Yangtze River Snow】
Organization | Peng Huizhong Editor-in-Chief | Tu Min
Produced | CSDN (ID: CSDNnews)
The GCC (GNU Compiler Collection, GCC) Steering Committee has approved the GCC Rust front-end, which is powered by the GNU compiler suite for the Rust programming language.The GCC Steering Committee has announced that the Rust frontend "GCC Rust" is suitable for inclusion in the GCC mainline codebase, and may be merged into the mainline before next year's GCC 13 release.
GCC Rust thrives
==================
GCC Front-End For Rust (also known as GCC Rust) is a complete alternative implementation of the Rust language on top of GCC with the goal of being upstream of the GNU toolchain.The official Rust compiler implementation is based on LLVM, and GCC Rust is a front-end project, and unlike LLVM, the compiler will gain full access to all GCC internal mid-range optimization passes.Projects that are tightly integrated with GCC can often benefit from GCC plugins.Of course, GCC will also bring support for more target architectures, and the GCC-based Rust compiler will make GCC Rust easier to start on new platforms.
At the time of this project's inception, Rust was at version 0.9, and now that the Rust language is stable enough, the time has come to create an alternative compiler.Since November 2020, developer Philip Herron has been working on GCC Rust full-time, and with the joint efforts of him and the entire community, GCC Rust is gradually entering the mainline.
The project is still in its early stages and the goal is to be the first to implement compiling the official Rust test suite, and the community hopes to have at least "test" level support for the Rust programming language in GCC 13, which will be available around April next year as aStable version released.
Rust's design principles are "safe, concurrent, and practical", and can achieve memory safety while ensuring the same performance as native compiled languages.Such features have also prompted more and more companies to use the Rust programming language to support Rust projects.Rust for Linux is also expected to be implemented in Linux 5.20.
The voice of the developers
The announcement sparked a lively discussion on Haker News by more than 400 developers, with many celebrating the news with joy.
One developer commented: "This is awesome! GCC's support for Rust opens up more platforms to Rust, achieves more goals, and makes it easier to interact with the wide variety of general-purpose embedded tools built around CGG.Chain integration opportunities. And GCC is free software, which is important to those who care."
Photo source Haker News
However, some developers have doubts about this: "What is the benefit of having multiple compilers for a programming language? Is there a situation where a Rust program compiled with GCC does something that LLVM cannot?Will it lead to the fragmentation of the Rust ecosystem?"
Photo source Haker News
Such concerns have also been answered by a number of developers.One developer stated: "1. GCC has more backends than LLVM. 2. Competition is generally good. 3. This is expected to cause inconsistencies between GCC and rustc (the compiler for the Rust programming language); because Rust doesn't really have a specification. That would force both parties to discuss and resolve these issues."
Photo source Haker News
Another developer also responded: "One benefit is that it forces the language to articulate the standard, rather than having the implementation define the feature set. Standards tend to bring stability and durability to the language, while also making it easier to write newcompiler and make it more portable."
Photo source Haker News
In general, the growth of GCC Rust carries a lot of expectations. By April next year, we may be able to meet it in GCC 13. So fellow developers, what do you think of GCC Rust?
Reference link: https://gcc.gnu.org/pipermail/gcc/2022-July/239057.html
"New Programmer 001-004" has been fully listed, welcome to scan the 2D belowcode or click to enter Subscribe now to enjoy e-books and beautiful paper books
Let me introduce myself first. The editor graduated from Jiaotong University in 2013. I worked in a small company and went to big factories such as Huawei and OPPO. I joined Ali in 2018, until now.I know that most junior and intermediate java engineers want to upgrade their skills, they often need to explore their own growth or sign up to study, but for training institutions, the tuition fee is nearly 10,000 yuan, which is really stressful.Self-learning that is not systematic is very inefficient and lengthy, and it is easy to hit the ceiling and the technology stops.Therefore, I collected a "full set of learning materials for java development" for everyone. The original intention is very simple. I hope to help friends who want to learn by themselves but don't know where to start, and at the same time reduce everyone's burden.Add the business card below to get a full set of learning materials
边栏推荐
猜你喜欢
Chi-square distribution of digital image steganography
【genius_platform软件平台开发】第七十四讲:window环境下的静态库和动态库的一些使用方法(VC环境)
【Map与Set】之LeetCode&牛客练习
【微信小程序】一文带你了解数据绑定、事件绑定以及事件传参、数据同步
勾股数元组 od js
Parameter introduction and selection points of wireless module
The level of ShardingSphere depots in actual combat (4)
The Meta Metaverse Division lost 2.8 billion in the second quarter, still want to continue to bet?Metaverse development has yet to see a way out
MySQL的分页你还在使劲的limit?
ShardingSphere's public table combat (7)
随机推荐
Bert usage and word prediction based on Keras_bert model
MySQL (6)
Zabbix干啥用?
有没有可以做副业可以日入300元方法?
Typescript14 - (type) of the specified parameters and return values alone
ECCV 2022 华科&ETH提出首个用于伪装实例分割的一阶段Transformer的框架OSFormer!代码已开源!
GCC Rust获批将被纳入主线代码库,或将于GCC 13中与大家见面
《实战》基于情感词典的文本情感分析与LDA主题分析
pc端判断当前使用浏览器类型
coldfusion8后台计划任务拿shell
Parameter introduction and selection points of wireless module
1.非类型模板参数 2.模板的特化 3.继承讲解
ShardingSphere's vertical sub-database sub-table actual combat (5)
MySql的安装配置超详细教程与简单的建库建表方法
35. Reverse linked list
MySQL高级-六索引优化
Basic Parameters of RF Devices 1
Word 表格跨页,仍然显示标题
Sping.事务的传播特性
4G通信模块CAT1和CAT4的区别