Re: Fortran pointers
- From: nospam@xxxxxxxxxxxxx (Richard E Maine)
- Date: Thu, 21 Sep 2006 08:10:23 -0700
Mathemagician <mathemagician@xxxxxxx> wrote:
This is where the process of creating a "minimal complete example" is
useful.
Thanks for the tipp. I've intuitively done that before, but I wasn't
aware that it's a common concept.
Oh. Absolutely. And to let you in on a "secret" :-) ... if you are good
at it, and put in the work (it can be a bit of work at times), compiler
developers come to appreciate you a lot. In NAG's early days of 15 years
ago, back when it was the first release of the first f90 compiler and
had lots of bugs, I submitted lots of bug reports (over 100 eventually).
I'm sure that my bug reports got priority treatment, not because anyone
at NAG had ever heard of me before (I wasn't yet on J3 or otherwise well
known in global Fortran circles), but because the developers noticed
that my bug reports tended to:
1. Be about actual bugs in the compiler instead of just errors in my own
code.
and
2. Include minimal complete examples that made it very easy for the
developer to find the bugs.
They like that a lot better than getting an 8,000-line mess of a
program, with the complaint that it "doesn't work" (no further details),
where the problem turns out to be a user code error. I've seen ones like
that.
Anyway, I tested Mike's example and it already displays the problem on
my compiler.
THat seems like pretty strong evidence of a compiler bug, then. And
Mike's example is an excellent (as I'd expect from him) "minimal
complete example" well suited for a bug report. If you still have
support contacts for the compiler, I'd suggest submitting it as a bug
report. On the other hand, maybe the "if" in the previous sentence is a
pretty big one. I recall the Salford compiler getting sold and
remarketted under a different name, so if yours is still called Salford,
odds are that it isn't a current supported version... though I haven't
done anything actually useful like research the version number you
cited.
Barring any solution for this, I guess the only option I have is to use
the original data field instead of another pointer, even if this makes
the code less readable.
I'd frankly be concerned about other pointer-related things with the
compiler until I managed to figure out exactly what conditions trigger
the apparent bug. It seems pretty basic.
--
Richard Maine | Good judgment comes from experience;
email: my first.last at org.domain| experience comes from bad judgment.
org: nasa, domain: gov | -- Mark Twain
.
- References:
- Fortran pointers
- From: Mathemagician
- Re: Fortran pointers
- From: Michael Metcalf
- Re: Fortran pointers
- From: Mathemagician
- Re: Fortran pointers
- From: Brooks Moses
- Re: Fortran pointers
- From: Mathemagician
- Fortran pointers
- Prev by Date: Re: calling a subroutine with optional arguments
- Next by Date: Re: Interface declarations
- Previous by thread: Re: Fortran pointers
- Next by thread: Re: Fortran pointers
- Index(es):
Relevant Pages
|