如何在 GPS 社区 2021 中允许 Ada Big_Numbers
How to allow Ada Big_Numbers in GPS Community 2021
对于 Ada 2022,可以根据我在 GPS Community Edition 2021 中遇到的错误在某处设置 -gnatwi
来启用 Ada.Numerics.Big_Numbers
。
warning: "Ada.Numerics.Big_Numbers" is an Ada 2022 unit [-gnatwi]
我假设必须为编译器设置标志,所以我修改了 gpr 文件中的 Compiler
包,如下所示:
package Compiler is
for Default_Switches ("Ada") use
Compile_Checks_Switches &
Build_Switches &
Runtime_Checks_Switches &
Style_Checks_Switches &
Contracts_Switches &
("-gnatw.X", -- Disable warnings for No_Exception_Propagation
"-gnatQ", -- Don't quit. Generate ALI and tree files even if illegalities
"-gnatwi"); -- Big_Numbers
end Compiler;
注意末尾的 -gnatwi
标志。
但是 GPS 仍然抱怨我在设置了 with Ada.Numerics.Big_Numers
的文件上尝试“Build->Check Semantic”。
重新启动 GPS 也没有帮助。
以-gnatw
开头的选项只是警告:
-gnatwxx Enable selected warning modes, xx = list of parameters:
i*+ turn on warnings for implementation unit
你可能想要:
-gnatX Language extensions permitted
编辑:
正如 Simon Wright 在评论中指出的那样,-gnat2020
应该有效,并且是一个更好的选择,即使它似乎没有记录在案。
对于 Ada 2022,可以根据我在 GPS Community Edition 2021 中遇到的错误在某处设置 -gnatwi
来启用 Ada.Numerics.Big_Numbers
。
warning: "Ada.Numerics.Big_Numbers" is an Ada 2022 unit [-gnatwi]
我假设必须为编译器设置标志,所以我修改了 gpr 文件中的 Compiler
包,如下所示:
package Compiler is
for Default_Switches ("Ada") use
Compile_Checks_Switches &
Build_Switches &
Runtime_Checks_Switches &
Style_Checks_Switches &
Contracts_Switches &
("-gnatw.X", -- Disable warnings for No_Exception_Propagation
"-gnatQ", -- Don't quit. Generate ALI and tree files even if illegalities
"-gnatwi"); -- Big_Numbers
end Compiler;
注意末尾的 -gnatwi
标志。
但是 GPS 仍然抱怨我在设置了 with Ada.Numerics.Big_Numers
的文件上尝试“Build->Check Semantic”。
重新启动 GPS 也没有帮助。
以-gnatw
开头的选项只是警告:
-gnatwxx Enable selected warning modes, xx = list of parameters:
i*+ turn on warnings for implementation unit
你可能想要:
-gnatX Language extensions permitted
编辑:
正如 Simon Wright 在评论中指出的那样,-gnat2020
应该有效,并且是一个更好的选择,即使它似乎没有记录在案。