$NetBSD: patch-ai,v 1.1 2008/08/31 20:09:12 dholland Exp $ --- src/bayes.c~ 2004-04-29 04:06:13.000000000 -0400 +++ src/bayes.c 2008-08-31 15:56:54.000000000 -0400 @@ -32,6 +32,7 @@ * IMPLEMENTATION HEADERS ****************************************************************************/ +#include #include #include #include @@ -222,7 +223,7 @@ static void print_list_txt (FILE *fp, entry_t *l) { while (l){ - fprintf (fp, "%d %s %d ", strlen (l->key), l->key, (int)l->content); + fprintf (fp, "%zu %s %ld ", strlen (l->key), l->key, (long)l->content); l = l->next; } } @@ -300,7 +301,7 @@ load_table (FILE *fp, htable_t **table) fread (&key_len, 1, sizeof (key_len), fp); fread (key, 1, key_len + 1, fp); fread (&content, 1, sizeof (content), fp); - htable_insert (*table, key, (void *) content); + htable_insert (*table, key, (void *)(intptr_t) content); } xfree (key); } @@ -340,7 +341,7 @@ heap_value (int i) if (word_heap[i] == NULL) return PROB_NEUTRAL; - return (int) word_heap[i]->content; + return (int)(intptr_t) word_heap[i]->content; } @@ -374,10 +375,10 @@ heap_internal_value (int i) if (word_heap[i] == NULL) return 0; - if (((int) word_heap[i]->content) > PROB_HALF) - return ((int) word_heap[i]->content) - PROB_HALF; + if (((int)(intptr_t) word_heap[i]->content) > PROB_HALF) + return ((int)(intptr_t) word_heap[i]->content) - PROB_HALF; else - return PROB_HALF - (int) word_heap[i]->content; + return PROB_HALF - (int)(intptr_t) word_heap[i]->content; } @@ -541,9 +542,9 @@ collect_insert_bad (char *word) entry_t *entry; entry = htable_insert (bad_table, word, (void *) 0); - entry->content = (void *) ((int) entry->content + collect_change); + entry->content = (void *) ((intptr_t) entry->content + collect_change); - if ((int) entry->content < 0) + if ((intptr_t) entry->content < 0) entry->content = (void *) 0; } @@ -555,9 +556,9 @@ collect_insert_good (char *word) entry_t *entry; entry = htable_insert (good_table, word, (void *) 0); - entry->content = (void *) ((int) entry->content + collect_change); + entry->content = (void *) ((intptr_t) entry->content + collect_change); - if ((int) entry->content < 0) + if ((intptr_t) entry->content < 0) entry->content = (void *) 0; } @@ -609,9 +610,9 @@ prob_word (char *word) int result; if (good_e) - good_occur = 2 * (int) good_e->content; + good_occur = 2 * (int)(intptr_t) good_e->content; if (bad_e) - bad_occur = (int) bad_e->content; + bad_occur = (int)(intptr_t) bad_e->content; if (bad_occur + good_occur < PROB_MIN_OCCUR) return PROB_NEUTRAL; @@ -652,7 +653,7 @@ prob_heap (void) for (i = 1; i < HEAP_SIZE; i++){ if (word_heap[i]) debug_msg (DEBUG_INFO, " %s: %d", word_heap[i]->key, - (int) word_heap[i]->content); + (int)(intptr_t) word_heap[i]->content); prod *= (heap_value (i) / (float) PROB_CERTAIN); opp_prod *= 1.0 - (heap_value (i) / (float) PROB_CERTAIN); } @@ -669,7 +670,7 @@ prob_insert_word (entry_t *entry) { int value = prob_word (entry->key); - htable_insert (prob_table, entry->key, (void *) value); + htable_insert (prob_table, entry->key, (void *)(intptr_t) value); }