ICE70

ICE70 验证是否正确指定了注册表项的整数值。 不会验证 ##str 和 #%unexpanded str 格式的值。 会验证 #xhex、#Xhex、#integer 和 #[property] 格式的值。 下表提供了简要概述。

验证
##str valid
#%unexpanded str valid
#xHex,#XHex 验证有效的十六进制字符(0-9,A-F,a-f)。 此处允许使用属性。
#+int, #-int, #int 验证有效数字字符(0-9)。 此处允许使用属性。

 

输入到注册表中的整数值的语法是 #integer,其中 integer 是数字。

结果

如果未正确指定注册表项的整数值,ICE70 将报告错误。

示例

对于给定示例,ICE70 报告以下错误。

The value #12xz34 is an invalid numeric value for registry entry Reg1. If you meant to use a string, then the string value entry must be preceded by ## not #.

修复此错误:如果希望值为数字,请将该值更改为使用所有数字字符。 如果希望值为字符串,则其前面必须有两个 # (##),而不是一个。

The value #xz34 is an invalid hexadecimal value for registry entry Reg2.

修复此错误:有效的十六进制字符为 0-9、A-F 和 a-f。 只有这些字符的后面可以带有 #X(或 #X)。

注册表(部分)

注册表
Reg1 #12xz34
Reg2 #xz34

 

备注

  • #[myproperty] 有效。
  • #[myproperty 无效(缺少结束括号)。
  • #[myprop1] [myprop2 有效。 (即使最后一个缺少结束括号,myprop1 也可以计算为 #str,因此会得到 ##str[myprop2,这是有效的
  • #]myproperty[ 无效
  • 值字符串中的任何嵌入属性都不能采用 [$compkey]、[#filekey] 和 [!filekey] 格式,因为这些不是数字。 但有一个例外,#[myproperty] [$compkey](或是 [#filekey] 或 [!filekey])是有效的,因为与前面一样,[myproperty] 可以计算为 #str。

ICE 参考