First of all your example looks something strange because it uses some iparm() values that are not supported by Intel MKL now. For example iparm(33), iparm(51) and iparm(52) are used in PARDISO 4.1 from University Basel. But iparm(27) is used for matrix checking in Intel MKL. So could you clarify what kind of PARDISO you are trying to use?
Also you mentioned that RHS vector b is set to zero in your example but in your sources above vector x (solution vector?) is set to zero. Could you provide us with the way how PARDISO is called in your program?