GCC Rust:用于Rust的GCC前端

2021-01-11 11:23:11

这是GCC之上的Rust语言的完全替代实现,其目标是成为GNU工具链的完全上游。

该项目的起源是几年前的社区工作,当时Rust仍为0.9版本;该语言发生了很大的变化,以至于社区工作很难跟上进度。现在,该语言处于稳定状态,这是创建替代编译器的好时机。该项目的开发人员热衷于“ Rustaceans”,他们希望回馈Rust社区,并了解GCC在使用现代语言时的能力。

编译脚本。重要的是要记住,GNU工具链项目被设计为在其源目录之外进行构建,这就是创建构建目录的原因。

$ gdb --args ./gcc/rust1 test.rs -frust-dump-parse -Warray-bounds -dumpbase test.rs -mtune = generic -march = x86-64 -O0 -version -fdump-tree-gimple -o test.s -L / lib / x86_64-linux-gnu -L / lib /../ lib64 -L / usr / lib / x86_64-linux-gnu -L / usr / lib /../ lib64

可以在gcc / testsuite / rust.test中找到测试用例,请随时参考github上的任何问题来贡献您的具体测试用例。

$码头工人建设。 -t gccrs-dev $ docker run --rm -v" $ PWD":/ usr / src / myapp -w / usr / src / myapp \ gccrs-dev:最新gccrs -g -O2 -c \ gcc / testsuite / rust.test / compilable / type_infer1.rs -o type_infer1.o

请注意,当我们达到一些里程碑时,这个项目旨在被推向GCC的上游,这意味着我们需要做出贡献才能将版权分配到位。请参阅:https://gcc.gnu.org/contribute.html

并非所有的贡献都必须是代码,我们希望看到新的测试用例或错误以及要报告的问题。 随时添加有关公开PR的任何评论 我们可以在所有常用的Rust渠道(例如Zulip)上找到我们,但我们也有自己的渠道: