> Ah yes. Here is an example of such a "thinko":
>
> bool ArgSymbol::isConstant(void) {
> if (intent == INTENT_CONST_IN || intent == INTENT_CONST_REF) {
> return true;
> }
Focusing on just the first half of this (for simplicity), whether or not
this is a thinko depends on what isConstant() is supposed to do. If it's
"tell me whether or not I can assign to this thing" then it's correct as
written; if it's "tell me whether or not the value this thing represents
might change" then it's got a problem. The bigger problem is probably
that a user of this routine may assume it's one of things when in fact
it's the other (as I did in my remoteValueForwarding patch).
In fixing that issue, I proposed splitting isConstant() into two routines
for these two cases, with better (longer) names. Then it's just a matter
of figuring out which case each call to isConstant() wanted. Any
objections to this change/approach?
-Brad
------------------------------------------------------------------------------
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and their
applications. Written by three acclaimed leaders in the field,
this first edition is now available. Download your free book today!
http://p.sf.net/sfu/13534_NeoTech
_______________________________________________
Chapel-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/chapel-developers