Hi Jerry,

> Greetings,
> 
> I tried to update the Fedora bigloo package to 4.3a once hop was
> updated to use the newer version, but the bigloo build failed on
> s390x.  We had already blacklisted the big endian ppc64 architecture
> for bigloo because of build failures there.  I decided to see if I
> could find the problem.  The attached patch gets the build to succeed
> on both s390x and big endian ppc64.
Wonderful. I have apply the patch. Thanks a million.

> The problem is mismatched declarations and definitions, as you can see
> by examining the patch.  I don't mean to be critical, but extern
> declarations in C files are a terrible idea, for precisely this
> reason.  If the declarations and definitions get out of sync, the
> compiler can't tell you about it, because it has no way of knowing.
> All of those declarations should be in header files that are included
> by both the defining code and the consuming code.
Yes. I agree. You are right. This is generally by laziness that we do not
include a legal C header file and we run in the very trouble you are
mentioning.

> Note that the patched code is wrong even for little endian
> architectures such as x86.  It just happens to "work" by accident.
What do you mean? What do you think is wrong?

Best,

-- 
Manuel

Reply via email to