| 41 | // avoid recursive calls |
| 42 | STATIC_VAR BOOLEAN d_poly_error_reporting = FALSE; |
| 43 | BOOLEAN dPolyReportError(poly p, ring r, const char* fmt, ...) |
| 44 | { |
| 45 | if (d_poly_error_reporting) return FALSE; |
| 46 | d_poly_error_reporting = TRUE; |
| 47 | va_list ap; |
| 48 | va_start(ap, fmt); |
| 49 | |
| 50 | fprintf(stderr, "\n// ***dPolyReportError: "); |
| 51 | vfprintf(stderr, fmt, ap); |
| 52 | fprintf(stderr, "\n occurred at\n"); |
| 53 | #ifdef HAVE_OMALLOC |
| 54 | omPrintCurrentBackTraceMax(stderr, 8); |
| 55 | #endif |
| 56 | if (p != NULL) |
| 57 | { |
| 58 | fprintf(stderr, " occurred for poly: "); |
| 59 | p_wrp(p, r); |
| 60 | omPrintAddrInfo(stderr, p, " "); |
| 61 | } |
| 62 | #ifndef MAKE_DISTRIBUTION |
| 63 | dErrorBreak(); |
| 64 | #endif |
| 65 | d_poly_error_reporting = FALSE; |
| 66 | return FALSE; |
| 67 | } |
| 68 | |
| 69 | /*************************************************************** |
| 70 | * |
no test coverage detected