我需要一个有效值在0到63之间(含0和63)的模块化整数类型。例如...
type Mix_Byte is mod 64;
这确实可以按预期进行编译和工作,但是编译器有助于我将注意力吸引到我这一点上可能的疏忽中。
warning: 2 ** 64 may have been intended here
碰巧的是我根本不打算这样做,但是很高兴知道编译器正在监视:)
似乎只对值32或64发出此警告,而不对8、16或128发出警告。我知道32和64是常见的整数大小,在这种情况下,2 ** n
才有意义。
对于该特定实例,我该如何沉默该特定的编译器警告(我想在整个项目中全局允许它,以防万一我在其他地方犯了真正的错误)。
我想我可以用不同的方式表达代码,以便更准确地表达我的意思?