Annotation of parser3/src/main/pa_memory.C, revision 1.1.2.5.2.7
1.1.2.1 paf 1: /** @file
2: Parser: memory reference counting classes.
3:
4: Copyright (c) 2001-2003 ArtLebedev Group (http://www.artlebedev.com)
5: Author: Alexandr Petrosian <paf@design.ru> (http://paf.design.ru)
6: */
7:
1.1.2.5.2.7! paf 8: static const char* IDENT_MEMORY_C="$Date: 2003/03/27 14:05:40 $";
1.1.2.1 paf 9:
10: #include "pa_sapi.h"
1.1.2.5.2.4 paf 11: #include "pa_common.h"
1.1.2.5 paf 12:
1.1.2.5.2.2 paf 13: void *pa_fail_alloc(const char* what, size_t size) {
1.1.2.5.2.7! paf 14: #ifdef PA_DEBUG_DISABLE_GC
! 15: SAPI::abort("xx");
! 16: #else
1.1.2.5.2.3 paf 17: SAPI::abort("out of memory: failed to %s %u bytes. "
18: "heap_used=%lu, heap_free=%lu, bytes_since_gc=%lu, total_bytes=%lu",
19: what, size,
20: GC_get_heap_size(),
21: GC_get_free_bytes(),
22: GC_get_bytes_since_gc(),
23: GC_get_total_bytes()
1.1.2.5.2.7! paf 24: );
! 25: #endif
1.1.2.1 paf 26: // never reached
27: return 0;
28: }
E-mail: