On 28/07/2008 6:41 PM, Andrew Redd wrote:
I'm having a problem with the error and warning functions.  I've tried this
on multiple machine so I'm fairly sure it's not machine dependent and I've
tried it on the latest versions 2.6.0-2.7.1.  Whenever my program gets to an
error or warning it crashes the entire program rather than throwing the
error like it should.

Here are the relevant bits.

...
    char const * const ExeedsMinVarianceError = "PFDA ERR: Near zero
variance encountered.  Estimation Unstable. Terminating Estimation.";
....
        if(debug){printf("Da:\n");printmat(DaOld,1,*ka);fflush(stdout);}
        daxpy_(ka, &mOne, Da, &one, DaOld, &one);
        for(i=0;i<*ka;i++)convergenceCriteria+=fabs(DaOld[i]);
        if(Da[*ka] < MinVariance){
            printf("PING");fflush(stdout);
            warning(ExeedsMinVarianceError);
            break;
        }

and the output from running in batch mode that I get is this:
Da:
0.1803    4.988e-017

PING
and here the program crashes.   I've tried this in multiple places and
sometimes the error is thrown sometimes not.  Does anyone have an idea of
what is going on.  I could not find any discussion of this error yet.

I don't know if this would have any effect, but we normally suggest that you use Rprintf, not printf.

If that's not relevant, you probably need to give more details: show us a complete file that does nothing but crash, let us know your platform, etc. Without reproducible code it's nearly impossible for us to diagnose errors, and often producing the reproducible code is enough to suggest to you what the problem is without any extra help.

Duncan Murdoch

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to