Why is this an illegal guard -module(t). -export([test/0]). test() -> if 33 == list_to_integer("33") -> 99; true -> 88 end. but this is ok -module(t). -export([test/0]). test() -> Num = list_to_integer("33"), if 33 == Num -> 99; true -> 88 end. Bob