comparison src/eval.c @ 2263:8a2092b558c2 vim73

updated for version 7.2.443 Problem: Using taglist() on a tag file with duplicate fields generates an internal error. (Peter Odding) Solution: Check for duplicate field names.
author Bram Moolenaar <bram@vim.org>
date Sat, 12 Jun 2010 20:12:02 +0200
parents a0b5918c33cc
children 2b33a7678e7b
comparison
equal deleted inserted replaced
2262:771f21e35ec5 2263:8a2092b558c2
449 static void dict_free __ARGS((dict_T *d, int recurse)); 449 static void dict_free __ARGS((dict_T *d, int recurse));
450 static dictitem_T *dictitem_copy __ARGS((dictitem_T *org)); 450 static dictitem_T *dictitem_copy __ARGS((dictitem_T *org));
451 static void dictitem_remove __ARGS((dict_T *dict, dictitem_T *item)); 451 static void dictitem_remove __ARGS((dict_T *dict, dictitem_T *item));
452 static dict_T *dict_copy __ARGS((dict_T *orig, int deep, int copyID)); 452 static dict_T *dict_copy __ARGS((dict_T *orig, int deep, int copyID));
453 static long dict_len __ARGS((dict_T *d)); 453 static long dict_len __ARGS((dict_T *d));
454 static dictitem_T *dict_find __ARGS((dict_T *d, char_u *key, int len));
455 static char_u *dict2string __ARGS((typval_T *tv, int copyID)); 454 static char_u *dict2string __ARGS((typval_T *tv, int copyID));
456 static int get_dict_tv __ARGS((char_u **arg, typval_T *rettv, int evaluate)); 455 static int get_dict_tv __ARGS((char_u **arg, typval_T *rettv, int evaluate));
457 static char_u *echo_string __ARGS((typval_T *tv, char_u **tofree, char_u *numbuf, int copyID)); 456 static char_u *echo_string __ARGS((typval_T *tv, char_u **tofree, char_u *numbuf, int copyID));
458 static char_u *tv2string __ARGS((typval_T *tv, char_u **tofree, char_u *numbuf, int copyID)); 457 static char_u *tv2string __ARGS((typval_T *tv, char_u **tofree, char_u *numbuf, int copyID));
459 static char_u *string_quote __ARGS((char_u *str, int function)); 458 static char_u *string_quote __ARGS((char_u *str, int function));
7041 /* 7040 /*
7042 * Find item "key[len]" in Dictionary "d". 7041 * Find item "key[len]" in Dictionary "d".
7043 * If "len" is negative use strlen(key). 7042 * If "len" is negative use strlen(key).
7044 * Returns NULL when not found. 7043 * Returns NULL when not found.
7045 */ 7044 */
7046 static dictitem_T * 7045 dictitem_T *
7047 dict_find(d, key, len) 7046 dict_find(d, key, len)
7048 dict_T *d; 7047 dict_T *d;
7049 char_u *key; 7048 char_u *key;
7050 int len; 7049 int len;
7051 { 7050 {