如何在SPARK Ada中实例化非库级软件包?在SPARK Ada中实例化非库级软件包
说我有这样的:
subtype Die is Integer range 1..6;
package Random_Die
is
new Ada.Numerics.Discrete_Random(Die);
这给了我的错误:
instantiation error at a-nudira.ads.45
incorrect placement of "Spark_Mode"
Random_Die is not a libray level package
大概我需要打开SPARK_Mode关闭Ada.Numerics.Discrete_Random,但我不能工作出正确的地方放置杂注。
SPARK_Mode * I *的唯一提及是包含我引用的代码的整个包上的SPARK_Mode => On。错误消息指向a-nudira.ads.45,它表示SPARK_Mode => Off,但a- ndira.ads是GNAT发行版的标准库模块,而不是我自己的代码。 – digitig
奇怪。那么也许你应该简单地按照要求去做,并且将'Ada.Numerics.Discrete_Random'的通用实例化成一个库级包。 –