<div class="gmail_quote">On Mon, Sep 17, 2012 at 8:44 PM, Barry Smith <span dir="ltr"><<a href="mailto:bsmith@mcs.anl.gov" target="_blank">bsmith@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 class="HOEnZb adM"><div class="im">> In any case, maybe we can say that it is safe to CHKERRQ after PetscInitialize because there is no code path by which it could fail? PetscInitialize itself starts calling CHKERRQ for everything after this part.<br>

<br>
</div></div>    Is that correct?</blockquote></div><br><div>I think it's fine except that the user hasn't had a chance to call PetscPushErrorHandler() and PetscPushSignalHandler(). Maybe we should make that safe to call before PetscInitialize()? That would just require using raw malloc() instead of PetscNew to allocate the frame. Could even put a flag in the frame and allocate with PetscMalloc once PETSc has been initialized.</div>