Yes, after i removed the initialization and explicitly assigned all the signals in each and every branch of if-else conditions the error was removed.
But I have used this methodology of initialization in a 3 process syntax of defining FSM as provided in XST guide. I think in single process style the sensitivity list includes (clk,rst) and it doesn't allows initialization of signals. While in 3 process style initialization of signals is allowed in process 2(it was not giving any errors).
I would like to ask one more question. What if I have around 20-30 signals that are to be assigned in the FSM and in every if-else conditional branch I need to take care of only 3-4 signals. In that case I would have to explicitly assign all the 20-30 signals even though I really care about the required 3-4 signals. Is there any solution to this cumbersome task of assigning each and every signal or it has to be done the hard way?