[Prev][Next][Index]
pC++ error
- Date: Wed, 20 Sep 1995 10:57:30 -0500
- From: "Vladimir Menkov" <vmenkov@cs.indiana.edu>
- To: sage-bugs@extreme.indiana.edu
- Subject: pC++ error
- Cc: beckman@cs.indiana.edu
- Sender: owner-sage-bugs@extreme.indiana.edu
Hello.
Every few months, I encounter the following pC++ error: for a
method of element foo() and method of collection bar(), the
pC++ compileres "forgets" to expand the function call
this->foo()
in bar() into an appropriate loop. (E.g., in uniproc mode the
code above is supposed to be expanded into something like
this in temp.C:
for(pcxx_0 =0; ...; ... ++) {
(* this)(pcxx_0) -> foo();
}
, but sometimes the expansion is not done.)
When this happens, the C++ compiler notices the error when it
compiles temp.C.
Usually I "sweep this problem under the carpet", i.e. make it
it go away by reordering my pC++ functions. (For some reason,
this usually succeeds). But now I am annoyed enough to finally
report the problem. The shortest example I could make is in
the directory ~vmenkov/exptest on caledonia. To see the
problem, run
build uniproc
and see how the pC++ preprocessor fails to expand the function arVez
(a MoE called from rankOneLusolt, a MoC). It is interesting
that the problem goes away if one comments out the previous
function, rankOneFactorABlock in main.pc.
Thanks for your attention.
--Vladimir