From 55f61861043284cb97725302a214593a26d273a0 Mon Sep 17 00:00:00 2001 From: wolf Date: Tue, 10 Aug 1999 15:35:14 +0000 Subject: [PATCH] Work around a problem in egcs1.1.2 git-svn-id: https://svn.dealii.org/trunk@1666 0785d39b-7218-0410-832d-ea1e28bc413d --- .../include/grid/tria_accessor.templates.h | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/deal.II/deal.II/include/grid/tria_accessor.templates.h b/deal.II/deal.II/include/grid/tria_accessor.templates.h index 3b94a84c31..f1f5dcec9e 100644 --- a/deal.II/deal.II/include/grid/tria_accessor.templates.h +++ b/deal.II/deal.II/include/grid/tria_accessor.templates.h @@ -477,23 +477,31 @@ TriaIterator > TriaObjectAccessor<3, dim>::line (const unsigned int i) const { Assert (used(), ExcCellNotUsed()); Assert (i<12, ExcIndexRange (i,0,12)); - + + // egcs 1.1.2 gets into trouble if we + // omit the this-> here, if one tries to + // inline this function into another + // function where the variable name + // quad is also used.. It then complains + // that the name look-up for + // for-loop-variables has changed. using + // this-> as here works around the problem if (i<4) - return quad(0)->line(i); + return this->quad(0)->line(i); else if (i<8) - return quad(1)->line(i-4); + return this->quad(1)->line(i-4); else switch (i) { case 8: - return quad(2)->line(3); + return this->quad(2)->line(3); case 9: - return quad(2)->line(1); + return this->quad(2)->line(1); case 10: - return quad(4)->line(1); + return this->quad(4)->line(1); case 11: - return quad(4)->line(3); + return this->quad(4)->line(3); }; Assert (false, ExcIndexRange(i,0,12)); return TriaIterator >(tria, -1, -1, 0); -- 2.39.5