Check if pointers are passed as NULL, and properly convert to Fortran pointers. These are then passed as *optional* arguments. This is allowed in Fortran-20008! Before, NULL pointers were silently passed to the optional argument. That works with ifort and gfortran, but not with bgxlf.