GNU libavl 2.0.1
Author: Ben Pfaff

6.4.2 Step 2: Insert |

    200. <Step 2: Insert RB node 200> =
    n = pa[k - 1]->rb_link[da[k - 1]] =
      tree->rb_alloc->libavl_malloc (tree->rb_alloc, sizeof *n);
    if (n == NULL)
      return NULL;

    n->rb_data = item;
    n->rb_link[0] = n->rb_link[1] = NULL;
    n->rb_color = RB_RED;
    tree->rb_count++;
    tree->rb_generation++;

This code is included in 197 and 210.

Exercises:

1. Why are new nodes colored red, instead of black? [answer]

6.4.1 Step 1: Search | 6.4 Insertion | 6.4.3 Step 3: Rebalance