1. The Enzo Project
  2. Untitled project
  3. enzo-dev

Pull requests

#173 Declined
Repository
pgrete
Branch
week-of-code
Repository
enzo
Branch
week-of-code

Fixes header include order and missing counter in WriteParameterFile

Author
  1. Philipp Grete
Reviewers
Description

c30a34e fixes include error at compile time:

catastrophic error: #error directive: "SEEK_SET is #defined but must not be for the C++ binding of MPI. Include mpi.h before stdio.h" #error "SEEK_SET is #defined but must not be for the C++ binding of MPI. Include mpi.h before stdio.h"

UPDATE: Due to reoccurring problems, all header includes with stdio have been adapted to work with preincludes.h

9c043b7 fixes missing counter in WriteParameterFile for MultiRefine vars

I strongly suggest to backport this (and Sam's recent) commits to the stable branch, because at this time resuming is broken in the stable version

  • Learn about pull requests

Comments (5)

  1. Nathan Goldbaum

    I think this should get merged in ASAP. I don't recognize the compiler errors Phillip is seeing, but clearly there are some platform differences relative to GNU compilers. FWIW, we made this change in enzo 3.0 a long time ago for all of the header imports.

    The second set of changes in WriteParameterFile are also a clear bugfix.

    Thanks for submitting these changes, Phillip!

      1. Philipp Grete author

        Bitbucket didn't allow to issue a separate pull request (or I just didn't find the proper switch) so I had to update this one.

        The reason for all these changes is, that my compiler started to complain about almost all source files once I made changes to some omnipresent files. I assume that some kind of header include order was broken due to these changes, so that e.g. the stdio.h file is included before mpi.h, which causes the error. I suspect our mpi implementation to cause this error, i.e. mpi.h is not included automatically (as it might be for other setups once the compiler is called via mpiXXX), but I haven't looked into the details, yet. Our cluster runs with intelmpi/4.0.1.007 and intel/11.1

        1. Nathan Goldbaum

          You can open a new pull request from a different head. If you're used to git, this is mercurial equivalient of a git branch. Since you'll be pushing a new head to the remote repository on bitbucket, you'll need to do hg push -f, but that's fine. Once you've pushed the new head, you can switch back and forth between heads on your bitbucket fork using the drop down box under the source tab for the repository. Mercurial bookmarks let you name these heads, or you can leave them anonymous and reference them using changeset hashes.