This web mail archive is frozen.
This page is part of a frozen web archive of this mailing list.
You can still navigate around this archive, but know that no new mails
have been added to it since July of 2016.
Click here to be taken to the new web archives of this list; it includes all the mails that are in this frozen archive plus all new mails that have been sent to the list since it was migrated to the new archives.
On 10/31/12 1:39 PM, "Paul Hargrove" <phhargrove_at_[hidden]> wrote:
>No, I don't have specific usage cases that concern me.
>As I said a minute or two ago in a reply to Ralph, my concern is that the
>Sandia codes provide an "existence proof" that "really smart people" can
>write questionable code at times. So, I fear that a larger-than-expected
>fraction of real codes would generate warnings.
Not surprisingly, most of the codes I'm concerned about are really old
(like pre-MPI old). The authors were dealing with more than one
communication library, so they wrote wrappers inside their code for
communication. The wrappers were for a bunch of different communication
interfaces and so fairly agnostic, but looked a lot like MPI (because MPI
looks a lot like NX, PVM, etc.). Anyway, they squashed down everything to
either a void* or char* (remember, this is when void* was not always
supported), passed that to MPI with a datatype, and off we go.
At present, we're not using clang as the front end. However, a lot of
developers of these codes do a lot of development on their Mac laptops,
meaning that they will be using clang in the not-too-distant future. And
since their usage of MPI is not wrong, I'd have some objection to them
That said, if we didn't throw a warning if the pointer is of type void* or
char*, I think I'd be mostly ok with the patch being on by default. I'm
not sure if that's possible or not...
Brian W. Barrett
Dept. 1423: Scalable System Software
Sandia National Laboratories