?
в сишке получилось, в D - нет
Тут надо уже пакет ставить через dub
ну я попробовал, оно вроде без ошибок, но исполняемый файл не создается таки где я дурак?)
dub.json { "name": "bigint", "dflags": ["--mtriple=ldc2", "-mtriple=x86_64-linux-gnu", "-w", "-O", "--betterC", "-static", "-of=program_d"], "dependencies": { "gmp-d": "~>0.2.17" } } source/program.d import gmp.z; @safe pure nothrow @nogc: //unittest void main() { import core.stdc.stdio : printf; alias Z = MpZ; //assert(Z.mersennePrime(15) == 2^^15 - 1); const a = 42.Z; const b = a.dup; // explicit copying required //printf("%llu\n", Z.mersennePrime(15)); printf("%s\n", Z.mersennePrime(15)); } dub add gmp-d прошло ок $ dub build --force source/program.d(34,15): Error: no property Z for 42 of type int ....
Что такое MpZ?
https://code.dlang.org/packages/gmp-d отсюда
что-то у тебя не весь код показан как будто тогда
.
а ты имя типа как проперть вызываешь?
да вообще не называю — взял пример с доки пакета, а он не пашет 😢
ссылку на пример в студию
убрал — const a = 42; ругается на Z a; source/program.d(10,5): Error: undefined identifier Z
Обсуждают сегодня