<div dir="ltr">The PetscObjectState* and PetscObjectComposedData* routines are in petscimpl, but documented as a public API. It would be nice to turn all these macros into functions (which will change their signature). I'm dubious of any claims that these are called in a context where a static function call would be a performance limitation.</div>
<div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Feb 12, 2013 at 9:39 AM, Jed Brown <span dir="ltr"><<a href="mailto:jedbrown@mcs.anl.gov" target="_blank">jedbrown@mcs.anl.gov</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">petscsys.h no longer includes petscimpl.h (including the _p_PetscObject definition) and petscvec.h no longer includes vecimpl.h (including _p_Vec). Users that need direct access can include the private headers, but we encourage you to explain your use case here so that we can provide a suitable public API.<div>

<br></div><div>Merged here:<br><br><a href="https://bitbucket.org/petsc/petsc-dev/commits/5c59734726c7c41f493a5f5b9303cfab5c66ae21" target="_blank">https://bitbucket.org/petsc/petsc-dev/commits/5c59734726c7c41f493a5f5b9303cfab5c66ae21</a><br>

</div></div>
</blockquote></div><br></div>