Here it is:

#define PetscObjectOptionsBegin(obj) 0; do {                            \
             PetscOptionItems PetscOptionsObjectBase;\
             PetscOptionItems *PetscOptionsObject =
&PetscOptionsObjectBase; \
             PetscOptionsObject->options = ((PetscObject)obj)->options; \
             for (PetscOptionsObject->count=(PetscOptionsPublish?-1:1);
PetscOptionsObject->count<2; PetscOptionsObject->count++) {\
             PetscErrorCode _5_ierr =
PetscObjectOptionsBegin_Private(PetscOptionsObject,obj);CHKERRQ(_5_ierr);

The ((PetscObject)obj)->options requires the definition of PetscObject
which is not in user
facing headers, so this bombs.

  Matt

-- 
What most experimenters take for granted before they begin their
experiments is infinitely more interesting than any results to which their
experiments lead.
-- Norbert Wiener

Reply via email to