toppers / asp3_in_zig

TOPPERS/ASP3 Kernel written in Zig Programming Language
15 stars 4 forks source link

Waiting for the fix of Zig : comptime function is executed twice #10

Open hiroakitakada opened 4 years ago

hiroakitakada commented 4 years ago

Zigにcomptimeが2回評価されるという不具合(https://github.com/ziglang/zig/issues/5380 )があるため,それを回避するために,genConfigにダミーのパラメータを渡している。

//  genConfigにvoid型のパラメータを渡すのは,Zigコンパイラの不具合の回
//  避のため(これがないと,genConfigが2回実行される).
pub fn genConfig(comptime dummy: void) type {
    comptime var cfg = CfgData{};
    target.configuration(&cfg);
    configuration(&cfg);
    return GenCfgData(&cfg);
}