[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFH] ExpressionEngine _not_ zero-based?
From: |
Richard Guenther |
Subject: |
[RFH] ExpressionEngine _not_ zero-based? |
Date: |
Mon, 23 Aug 2004 23:15:06 +0200 |
User-agent: |
Mozilla Thunderbird 0.7.3 (X11/20040820) |
Despite it says so
template<int Dim, class T, class Expr>
class Engine<Dim, T, ExpressionTag<Expr> >
{
public:
...
/// Expression-engines are zero-based.
enum { zeroBased = true };
it is _not_ zero-based - at least not in all cases. Example:
Array<1, int> a(8, GuardLayers<1>(1)), b(8, GuardLayers<1>(1));
std::cout << (a+b).domain() << std::endl;
prints [-1:8:1] while it should have printed [0:9:1]!
or not? The same wrapped into a dummy stencil with zero extent
std::cout << Stencil<Dummy>()(a+b).domain() << std::endl;
yields the expected. StencilEngines seem to be really zero-based
(well, yes - they do it the strange way - not taking a view of the
expression, but keeping an offset).
While I suspect StencilEngine and ExpressionEngine need to be very
similar in principle I don't know how to best fix this deficiency.
Any ideas?
Richard.
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [RFH] ExpressionEngine _not_ zero-based?,
Richard Guenther <=