In reply to rag123:
Thanks for pointing the LRM Section .
As per my interpretation of the particular LRM section , transition length of 0 is Invalid .
So ( 0 ) or ( [0:1] ) are invalid as there are no transitions effectively .
Eg :: ( 0 => 1 ) or ( [0:1] => 3 ) . These have length of non-zero transition due to => 1 and => 3
Similarly ( 0[*1] ) or ( [0:1][*1] ) have no transition , hence their length is 0 .
In the top code due to transition ( 2'b11 => .. ) in the start itself ensures there is a transition i.e Non-zero length ,
So I still think it should be valid