The following code:
```
predicate G<X>(f:X->bool)
reads f.reads;
requires forall x :: f.requires(x) && f(x);
{
true
}
predicate H()
{
G((x:int) => true)
}
```
gives an internal translation error:
input(1,12): Error: undeclared identifier: _module._default.G$X
input(1,12): Error: undeclared identifier: _module._default.G$X
2 name resolution errors detected in src.bpl
*** Encountered internal translation error - re-running Boogie to get better debug information
src.bpl(2170,24): Error: undeclared identifier: _module._default.G$X
src.bpl(2174,24): Error: undeclared identifier: _module._default.G$X
2 name resolution errors detected in src.bpl
```
predicate G<X>(f:X->bool)
reads f.reads;
requires forall x :: f.requires(x) && f(x);
{
true
}
predicate H()
{
G((x:int) => true)
}
```
gives an internal translation error:
input(1,12): Error: undeclared identifier: _module._default.G$X
input(1,12): Error: undeclared identifier: _module._default.G$X
2 name resolution errors detected in src.bpl
*** Encountered internal translation error - re-running Boogie to get better debug information
src.bpl(2170,24): Error: undeclared identifier: _module._default.G$X
src.bpl(2174,24): Error: undeclared identifier: _module._default.G$X
2 name resolution errors detected in src.bpl