Geoff, thanks for the log.  

| In file included from 
/Users/goxberry/petsc-3.4.2/src/mat/impls/elemental/matelem.cxx:1:
| In file included from 
/Users/goxberry/petsc-3.4.2/include/../src/mat/impls/elemental/matelemimpl.h:5:
| In file included from 
/Users/goxberry/petsc-3.4.2/include/petsc-private/matimpl.h:5:
| In file included from /Users/goxberry/petsc-3.4.2/include/petscmat.h:6:
| In file included from /Users/goxberry/petsc-3.4.2/include/petscvec.h:9:
| In file included from /Users/goxberry/petsc-3.4.2/include/petscis.h:7:
| /Users/goxberry/petsc-3.4.2/include/petscsys.h:2325:117: error: expected ')'
| PETSC_STATIC_INLINE PetscErrorCode PetscSegBufferGetInts(PetscSegBuffer 
seg,PetscInt count,PetscInt *PETSC_RESTRICT *slot) {return 
PetscSegBufferGet(seg,count,(void**)slot);}
|                                                                               
                                      ^


Karl fixed this in 'next', but in a branch started from 'master'.  We
had a discussion about the design at that point and decided that the
"hack" was messy and error-prone.

https://bitbucket.org/petsc/petsc/commits/0a8720703c3660d0eaeec3a29abfe2a9bfa7773f


I think Matt's suggestion of two separate files is overkill and not
clearly better.  Here is an alternative proposal (which is consistent
with the handling of PETSC_FUNCTION_NAME, which works smoothly).

https://bitbucket.org/petsc/petsc/commits/ed938b00aafbc8619c94f12cc845a1c4a3fa2bcd

You can test by:

  $ git checkout jed/fix-restrict-cxx
  $ ./configure ...

(Actually, you could just delete the definitions of PETSC_RESTRICT and
PETSC_STATIC_INLINE from petscconf.h, then run "make".)

This branch starts from 'maint' so you won't see any interface changes
in the above.

Attachment: pgp1PxBzrSLvL.pgp
Description: PGP signature

Reply via email to