anchor.diff:  static VALUE CLexer_alloc(VALUE klass)
   {
     VALUE obj;
  -  lexer *lxr = ALLOC_N(lexer, 1);
  +  lexer_state *lxr = ALLOC_N(lexer_state, 1);
     lxr->store_comment_content = store_comment_content;
     lxr->store_tag_content = store_tag_content;
     lxr->store_feature_content = store_feature_content;
  
positive.code: typedef void (*listener_long_cb)(void *listener, const char *keyword_at, size_t keyword_length, const char *at, size_t length, int line);
  typedef void (*listener_pystring_cb)(void *listener, int start_col, const char *at, size_t length, int line);
  typedef void (*listener_table_cb)(void *listener, void *table, int line);
  typedef void (*ruby_table_cb)(void *lexer);
  typedef void (*ruby_table_cell_cb)(void *lexer, const char *at, size_t length);
  
  typedef struct lexer {
    int cs;
    int content_len;
    int line_number;
  
negative.code:   rb_funcall((VALUE)listener, rb_intern("py_string"), 3, INT2FIX(start_col), con, INT2FIX(current_line));
  }
  
  static void initialize_table(lexer_state *lxr)
  {
    VALUE table, row;
    table = rb_ary_new();
  