diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0a08f8b19dc3ebb7145e1eed9f0e0a8caa073f77..3b5ad656bcc9debe3fe94ab4e63d31b41e0b2efb 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,13 @@ +2001-03-01 John David Anglin <dave@hiauly1.hia.nrc.ca> + + * cpplib.c (_cpp_init_stacks): Cast enum for comparison. + * cppexp.c (lex): Cast enums for comparison. + * cppinit.c (parse_option): Cast enum for comparison. + * cpplex.c (cpp_spell_token): Cast enums to int for minus. + (cpp_output_token): Likewise. + (cpp_can_paste): Cast enums for comparsion and plus/minus. + (cpp_avoid_paste): Cast enums for minus and comparison. + 2001-03-01 Zack Weinberg <zackw@stanford.edu> * gcc.c, objc/lang-specs.h: Add zero initializer for cpp_spec diff --git a/gcc/cppexp.c b/gcc/cppexp.c index 6aa6d4b4dc3bb7f27da82a0f2a77be91145c48d4..6ce693e48cccfc3ae0fd0042578eae427082870d 100644 --- a/gcc/cppexp.c +++ b/gcc/cppexp.c @@ -477,7 +477,8 @@ lex (pfile, skip_evaluation, token) /* Fall through. */ default: - if ((token->type > CPP_EQ && token->type < CPP_PLUS_EQ) + if (((int) token->type > (int) CPP_EQ + && (int) token->type < (int) CPP_PLUS_EQ) || token->type == CPP_EOF) { op.op = token->type; diff --git a/gcc/cppinit.c b/gcc/cppinit.c index e6ae245f823715222735e01a391dae90c7796ea5..2b2e1998420e6b6c05417b7725312b450fd4581d 100644 --- a/gcc/cppinit.c +++ b/gcc/cppinit.c @@ -1191,7 +1191,7 @@ parse_option (input) Otherwise, return the longest option-accepting match. This loops no more than twice with current options. */ mx = md; - for (; mn < N_OPTS; mn++) + for (; mn < (unsigned int) N_OPTS; mn++) { opt_len = cl_options[mn].opt_len; if (memcmp (input, cl_options[mn].opt_text, opt_len)) diff --git a/gcc/cpplex.c b/gcc/cpplex.c index 9025b0531a80ef8590775b5b87eae248efe3d12b..1d98b056a635838cc3243d7a5d347e66a38e68b0 100644 --- a/gcc/cpplex.c +++ b/gcc/cpplex.c @@ -1321,7 +1321,8 @@ cpp_spell_token (pfile, token, buffer) unsigned char c; if (token->flags & DIGRAPH) - spelling = digraph_spellings[token->type - CPP_FIRST_DIGRAPH]; + spelling + = digraph_spellings[(int) token->type - (int) CPP_FIRST_DIGRAPH]; else if (token->flags & NAMED_OP) goto spell_ident; else @@ -1413,7 +1414,8 @@ cpp_output_token (token, fp) const unsigned char *spelling; if (token->flags & DIGRAPH) - spelling = digraph_spellings[token->type - CPP_FIRST_DIGRAPH]; + spelling + = digraph_spellings[(int) token->type - (int) CPP_FIRST_DIGRAPH]; else if (token->flags & NAMED_OP) goto spell_ident; else @@ -1523,8 +1525,8 @@ cpp_can_paste (pfile, token1, token2, digraph) if (token2->flags & NAMED_OP) b = CPP_NAME; - if (a <= CPP_LAST_EQ && b == CPP_EQ) - return a + (CPP_EQ_EQ - CPP_EQ); + if ((int) a <= (int) CPP_LAST_EQ && b == CPP_EQ) + return (enum cpp_ttype) ((int) a + ((int) CPP_EQ_EQ - (int) CPP_EQ)); switch (a) { @@ -1637,12 +1639,12 @@ cpp_avoid_paste (pfile, token1, token2) c = EOF; if (token2->flags & DIGRAPH) - c = digraph_spellings[b - CPP_FIRST_DIGRAPH][0]; + c = digraph_spellings[(int) b - (int) CPP_FIRST_DIGRAPH][0]; else if (token_spellings[b].category == SPELL_OPERATOR) c = token_spellings[b].name[0]; /* Quickly get everything that can paste with an '='. */ - if (a <= CPP_LAST_EQ && c == '=') + if ((int) a <= (int) CPP_LAST_EQ && c == '=') return 1; switch (a) diff --git a/gcc/cpplib.c b/gcc/cpplib.c index 0ebd093f6135bd615e2b4d2db04156d8365b2855..07f8fad728ba6e4658abf9494fa0538a23e69889 100644 --- a/gcc/cpplib.c +++ b/gcc/cpplib.c @@ -1879,7 +1879,7 @@ _cpp_init_stacks (pfile) obstack_init (pfile->buffer_ob); /* Register the directives. */ - for (i = 0; i < N_DIRECTIVES; i++) + for (i = 0; i < (unsigned int) N_DIRECTIVES; i++) { node = cpp_lookup (pfile, dtable[i].name, dtable[i].length); node->directive_index = i + 1;