Ignore:
Timestamp:
Mar 2, 2008, 12:29:06 AM (14 years ago)
Author:
Sam Hocevar
Message:
  • Fix almost 2,000 warnings by using proper "const" keywords where needed.
File:
1 edited

Legend:

Unmodified
Added
Removed
  • abuse/trunk/src/lisp.cpp

    r20 r39  
    4242int current_space;  // normally set to TMP_SPACE, unless compiling or other needs
    4343
    44 inline int streq(char *s1, char *s2)   // when you don't need as much as strcmp, this is faster...
     44// when you don't need as much as strcmp, this is faster...
     45inline int streq(char const *s1, char const *s2)
    4546{
    4647  while (*s1)
     
    9899}
    99100
    100 void lbreak(const char *format, ...)
     101void lbreak(char const *format, ...)
    101102{
    102103  break_level++;
     
    136137    else
    137138    {
    138       char *s=st;
     139      char const *s=st;
    139140      do
    140141      {
     
    151152}
    152153
    153 void need_perm_space(char *why)
     154void need_perm_space(char const *why)
    154155{
    155156  if (current_space!=PERM_SPACE && current_space!=GC_SPACE)
     
    299300}
    300301
    301 struct lisp_string *new_lisp_string(char *string)
     302struct lisp_string *new_lisp_string(char const *string)
    302303{
    303304  int size=sizeof(lisp_string)+strlen(string)+1;
     
    311312}
    312313
    313 struct lisp_string *new_lisp_string(char *string, int length)
     314struct lisp_string *new_lisp_string(char const *string, int length)
    314315{
    315316  int size=sizeof(lisp_string)+length+1;
     
    451452
    452453
    453 char *lerror(char *loc, char *cause)
     454char *lerror(char const *loc, char const *cause)
    454455{
    455456  int lines;
     
    780781
    781782/*
    782 lisp_symbol *find_symbol(char *name)
     783lisp_symbol *find_symbol(char const *name)
    783784{
    784785  cons_cell *cs;
     
    792793
    793794
    794 lisp_symbol *make_find_symbol(char *name)    // find a symbol, if it doesn't exsist it is created
     795lisp_symbol *make_find_symbol(char const *name)    // find a symbol, if it doesn't exsist it is created
    795796{
    796797  lisp_symbol *s=find_symbol(name);
     
    814815*/
    815816
    816 lisp_symbol *find_symbol(char *name)
     817lisp_symbol *find_symbol(char const *name)
    817818{
    818819  lisp_symbol *p=lsym_root;
     
    829830
    830831
    831 lisp_symbol *make_find_symbol(char *name)
     832lisp_symbol *make_find_symbol(char const *name)
    832833{
    833834  lisp_symbol *p=lsym_root;
     
    992993}
    993994
    994 lisp_symbol *add_sys_function(char *name, short min_args, short max_args, short number)
     995lisp_symbol *add_sys_function(char const *name, short min_args, short max_args, short number)
    995996{
    996997  need_perm_space("add_sys_function");
     
    10181019}
    10191020
    1020 lisp_symbol *add_c_function(char *name, short min_args, short max_args, short number)
     1021lisp_symbol *add_c_function(char const *name, short min_args, short max_args, short number)
    10211022{
    10221023  total_user_functions++;
     
    10321033}
    10331034
    1034 lisp_symbol *add_c_bool_fun(char *name, short min_args, short max_args, short number)
     1035lisp_symbol *add_c_bool_fun(char const *name, short min_args, short max_args, short number)
    10351036{
    10361037  total_user_functions++;
     
    10471048
    10481049
    1049 lisp_symbol *add_lisp_function(char *name, short min_args, short max_args, short number)
     1050lisp_symbol *add_lisp_function(char const *name, short min_args, short max_args, short number)
    10501051{
    10511052  total_user_functions++;
     
    10611062}
    10621063
    1063 void skip_c_comment(char *&s)
     1064void skip_c_comment(char const *&s)
    10641065{
    10651066  s+=2;
     
    10731074}
    10741075
    1075 long str_token_len(char *st)
     1076long str_token_len(char const *st)
    10761077{
    10771078  long x=1;
     
    10841085}
    10851086
    1086 int read_ltoken(char *&s, char *buffer)
     1087int read_ltoken(char const *&s, char *buffer)
    10871088{
    10881089  // skip space
     
    11271128char n[MAX_LISP_TOKEN_LEN];  // assume all tokens will be < 200 characters
    11281129
    1129 int end_of_program(char *s)
     1130int end_of_program(char const *s)
    11301131{
    11311132  return !read_ltoken(s,n);
     
    11441145void *comp_optimize(void *list);
    11451146
    1146 void *compile(char *&s)
     1147void *compile(char const *&s)
    11471148{
    11481149  void *ret=NULL;
     
    11981199    do
    11991200    {
    1200       char *tmp=s;
     1201      char const *tmp=s;
    12011202      if (!read_ltoken(tmp,n))           // check for the end of the list
    12021203        lerror(NULL,"unexpected end of program");
     
    12991300
    13001301
    1301 static void lprint_string(char *st)
     1302static void lprint_string(char const *st)
    13021303{
    13031304  if (current_print_file)
    13041305  {
    1305     for (char *s=st;*s;s++)
     1306    for (char const *s=st;*s;s++)
    13061307    {
    13071308/*      if (*s=='\\')
     
    24352436                                s[l]=0;
    24362437                                delete fp;
    2437                                 char *cs=s;
     2438                                char const *cs=s;
    24382439                        #ifndef NO_LIBS
    24392440                                char msg[100];
     
    30973098
    30983099#define TOTAL_SYS_FUNCS 99
    3099                                  //  0      1    2       3       4      5      6      7
    3100 char *sys_funcs[TOTAL_SYS_FUNCS]={"print","car","cdr","length","list","cons","quote","eq",
    3101                                 // 8   9   10    11       12          13     14      15      16
    3102                                   "+","-","if","setf","symbol-list","assoc","null","acons","pairlis",
    3103                                 // 17     18     19     20     21     22    23      24
    3104                                   "let","defun","atom","not", "and", "or","progn","equal",
    3105                                 // 25               26          27       28  29   30     31
    3106                                   "concatenate","char-code","code-char","*","/","cond","select",
    3107                                 // 32            33         34     35    36    37       
    3108                                   "function", "mapcar", "funcall", ">", "<", "tmp-space",
    3109                                 //   38              39        40       41         42
    3110                                   "perm-space","symbol-name","trace","untrace","digstr",
    3111                                 //   43            44   45    46    47  48       49
    3112                                   "compile-file","abs","min","max",">=","<=","backquote",
    3113                                 //  50      51      52         53           54    55     56
    3114                                   "comma","nth","resize-tmp","resize-perm","cos","sin","atan2",
    3115                                   // 57       58     59     60     61   62              63
    3116                                   "enum", "quit","eval","break","mod","write_profile","setq",
    3117                                   // 64    65          66      67       68        69        70
    3118                                   "for", "open_file","load","bit-and","bit-or","bit-xor","make-array",
    3119                                   // 71      72          73          74        75      76
    3120                                   "aref","if-1progn","if-2progn","if-12progn","eq0","preport",
    3121                                   // 77     78         79        80       81     82     83
    3122                                   "search","elt",    "listp", "numberp", "do",  "gc", "schar",
    3123                                   // 84       85        86      87      88        89    90
    3124                                   "symbolp","num2str","nconc","first","second","third","fourth",
    3125                                   // 91       92       93       94       95      96
    3126                                   "fifth", "sixth", "seventh","eighth","ninth","tenth",
    3127                                   "substr",       // 97
    3128                                   "local_load"    // 98, filename
    3129                                 };
     3100char const *sys_funcs[TOTAL_SYS_FUNCS] =
     3101{
     3102    //  0      1    2       3       4      5      6      7
     3103    "print","car","cdr","length","list","cons","quote","eq",
     3104    // 8   9   10    11       12          13     14      15      16
     3105    "+","-","if","setf","symbol-list","assoc","null","acons","pairlis",
     3106    // 17     18     19     20     21     22    23      24
     3107    "let","defun","atom","not", "and", "or","progn","equal",
     3108    // 25               26          27       28  29   30     31
     3109    "concatenate","char-code","code-char","*","/","cond","select",
     3110    // 32            33         34     35    36    37       
     3111    "function", "mapcar", "funcall", ">", "<", "tmp-space",
     3112    //   38              39        40       41         42
     3113    "perm-space","symbol-name","trace","untrace","digstr",
     3114    //   43            44   45    46    47  48       49
     3115    "compile-file","abs","min","max",">=","<=","backquote",
     3116    //  50      51      52         53           54    55     56
     3117    "comma","nth","resize-tmp","resize-perm","cos","sin","atan2",
     3118    // 57       58     59     60     61   62              63
     3119    "enum", "quit","eval","break","mod","write_profile","setq",
     3120    // 64    65          66      67       68        69        70
     3121    "for", "open_file","load","bit-and","bit-or","bit-xor","make-array",
     3122    // 71      72          73          74        75      76
     3123    "aref","if-1progn","if-2progn","if-12progn","eq0","preport",
     3124    // 77     78         79        80       81     82     83
     3125    "search","elt",    "listp", "numberp", "do",  "gc", "schar",
     3126    // 84       85        86      87      88        89    90
     3127    "symbolp","num2str","nconc","first","second","third","fourth",
     3128    // 91       92       93       94       95      96
     3129    "fifth", "sixth", "seventh","eighth","ninth","tenth",
     3130    "substr",       // 97
     3131    "local_load"    // 98, filename
     3132};
    31303133
    31313134/* select, digistr, load-file are not a common lisp functions! */
Note: See TracChangeset for help on using the changeset viewer.