On Sep 29, 2012, at 9:08 PM, Jed Brown <jedbrown at mcs.anl.gov> wrote:

> On Sat, Sep 29, 2012 at 12:20 PM, Dmitry Karpeev <karpeev at mcs.anl.gov> 
> wrote:
> > ^^^ Note that this const is superfluous.
> Why is it superfluous?  Isn't the second argument type const char* const this 
> way?
> 
> It's superfluous for the same reason we don't "set" by passing "const 
> PetscInt". The const is irrelevant to the caller. All it means is that the 
> implementation doesn't change the *its* copy (pass by value) and even that 
> isn't type checked with respect to the public declaration. It's just clutter 
> and suggests that the person who wrote it doesn't understand types.

  Which clearly I don't :-(

   So do we just go with typedef const char* VecType   and then all signatures 
are  VecType?

Reply via email to