Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quellcode-Bibliothek staticrootslib.c   Sprache: unbekannt

 

/* This test file is intended to be compiled into a DLL. */

#ifndef GC_DEBUG
define GC_DEBUG
#endif

#include "gc.h"

#ifndef GC_TEST_EXPORT_API
if defined(GC_VISIBILITY_HIDDEN_SET) \
     && !defined(__CEGCC__) && !defined(__CYGWIN__) && !defined(__MINGW32__)
#   define GC_TEST_EXPORT_API \
                        extern __attribute__((__visibility__("default")))
else
#   define GC_TEST_EXPORT_API extern
endif
#endif

struct treenode {
    struct treenode *x;
    struct treenode *y;
};

static struct treenode *root[10] = { 0 };
static struct treenode *root_nz[10] = { (struct treenode *)(GC_word)2 };

#ifdef STATICROOTSLIB2
define libsrl_getpelem libsrl_getpelem2
#else

  GC_TEST_EXPORT_API struct treenode * libsrl_mktree(int i)
  {
    struct treenode * r = GC_NEW(struct treenode);
    if (0 == i)
      return 0;
    if (1 == i)
      r = (struct treenode *)GC_MALLOC_ATOMIC(sizeof(struct treenode));
    if (r) {
      struct treenode *x = libsrl_mktree(i - 1);
      struct treenode *y = libsrl_mktree(i - 1);
      r -> x = x;
      r -> y = y;
      if (i != 1) {
        GC_END_STUBBORN_CHANGE(r);
        GC_reachable_here(x);
        GC_reachable_here(y);
      }
    }
    return r;
  }

  GC_TEST_EXPORT_API void * libsrl_init(void)
  {
#   ifdef TEST_MANUAL_VDB
      GC_set_manual_vdb_allowed(1);
#   endif
#   ifndef STATICROOTSLIB_INIT_IN_MAIN
      GC_INIT();
#   endif
#   ifndef NO_INCREMENTAL
      GC_enable_incremental();
#   endif
    return GC_MALLOC(sizeof(struct treenode));
  }

#endif /* !STATICROOTSLIB2 */

GC_TEST_EXPORT_API struct treenode ** libsrl_getpelem(int i, int j)
{
  return &((j & 1) != 0 ? root_nz : root)[i];
}

Messung V0.5
C=96 H=97 G=96

[ 0.2Quellennavigators  Projekt   ]

                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....
    

Besucherstatistik

Besucherstatistik

Monitoring

Montastic status badge