[petsc-users] Is Elemental compatible with Clang from LLVM 3.3?
Jed Brown
jedbrown at mcs.anl.gov
Sun Oct 6 15:31:18 CDT 2013
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.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 835 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20131006/607bd4a4/attachment.pgp>
More information about the petsc-users
mailing list