dolfin team mailing list archive
-
dolfin team
-
Mailing list archive
-
Message #02231
Re: DefaultParameters.h
On Fri, Mar 24, 2006 at 11:01:29PM +0100, Garth N. Wells wrote:
> I've tried some more, and this is where I'm at:
>
> 1. When using the Intel C++ compiler with the gcc header files (which is
> required in order to link with other libraries compiled with gcc), the
> only fatal error is the problem with PArray.h. This I haven't worked
> this out yet. There are a lot of warnings which I can fix. A warning
> which I can't fix (needs to be done in FFC) relates to the virtual
> functions
> void BiLinearForm::real [], const AffineMap&, uint) const
> void LinearForm::real [], const AffineMap&, uint) const
>
> The error is
>
> error #654: overloaded virtual function "dolfin::BilinearForm::eval" is
> only partially overridden in class
> "dolfin::ConvectionDiffusion2D::BilinearForm"
> class BilinearForm : public dolfin::BilinearForm
>
> Could we put an empty eval() function which takes 3 arguments in the FFC
> generated files?
Is the problem that the two functions have the same name and one is
overloaded but not the other?
I can fix this in FFC, it's a simple fix to generate the extra
function.
> 2. When using the Intel C++ compiler with the Intel header files, I get
> a lot more errors, which can also be fixed. One thing is when using
> STLs, the header files need to be included, which the aren't now. For
> example, in MeshInit.cpp, the function set_intersection() is called,
> which I couldn't find anywhere in DOLFIN. I realised later the it could
> be fixed by
> #include<algorithm>
> Why don't we need to include this when using g++?
>
> I think that sorting out this case in particular will enhance
> portability.
>
> Garth
I don't recognize the set_intersection() stuff, didn't even know it
was there (most likely Johan J has added this). But yes, all the STL
headers should be included where appropriate. I don't know why gcc
does not complain.
/Anders
> On Fri, 2006-03-24 at 14:14 -0600, Anders Logg wrote:
> > On Fri, Mar 24, 2006 at 07:01:44PM +0100, Garth N. Wells wrote:
> > > Another problem is in DefaultParameters.h. Throughout the code, I've had
> > > to include header files for Standard Template Library. In
> > > DefaultParameters.h I get the error mesage
> > >
> > > /dolfin/DefaultParameters.h(57): error: namespace "std" has no member
> > > "numeric_limits"
> > > add("homotopy maximum size", std::numeric_limits<int>::max());
> > > ^
> > >
> > > ./dolfin/DefaultParameters.h(57): error: type name is not allowed
> > > add("homotopy maximum size", std::numeric_limits<int>::max());
> > >
> > > but if I add #include<limits> I then get a whole bunch of other errors.
> > >
> > > Garth
> >
> > Where did you include <limits>? In ParameterSystem.cpp?
> >
> > /Anders
> >
> > _______________________________________________
> > DOLFIN-dev mailing list
> > DOLFIN-dev@xxxxxxxxxx
> > http://www.fenics.org/cgi-bin/mailman/listinfo/dolfin-dev
>
>
> _______________________________________________
> DOLFIN-dev mailing list
> DOLFIN-dev@xxxxxxxxxx
> http://www.fenics.org/cgi-bin/mailman/listinfo/dolfin-dev
>
--
Anders Logg
Research Assistant Professor
Toyota Technological Institute at Chicago
http://www.tti-c.org/logg/
Follow ups
References