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: