emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/src/lread.c


From: Juanma Barranquero
Subject: [Emacs-diffs] Changes to emacs/src/lread.c
Date: Tue, 04 Feb 2003 09:03:28 -0500

Index: emacs/src/lread.c
diff -c emacs/src/lread.c:1.304 emacs/src/lread.c:1.305
*** emacs/src/lread.c:1.304     Sat Dec 21 13:06:27 2002
--- emacs/src/lread.c   Tue Feb  4 09:03:12 2003
***************
*** 215,221 ****
     The READCHAR and UNREAD macros are meant for reading/unreading a
     byte code; they do not handle multibyte characters.  The caller
     should manage them if necessary.
!    
     [ Actually that seems to be a lie; READCHAR will definitely read
       multibyte characters from buffer sources, at least.  Is the
       comment just out of date?
--- 215,221 ----
     The READCHAR and UNREAD macros are meant for reading/unreading a
     byte code; they do not handle multibyte characters.  The caller
     should manage them if necessary.
! 
     [ Actually that seems to be a lie; READCHAR will definitely read
       multibyte characters from buffer sources, at least.  Is the
       comment just out of date?
***************
*** 233,239 ****
    register int c;
  
    readchar_count++;
!   
    if (BUFFERP (readcharfun))
      {
        register struct buffer *inbuffer = XBUFFER (readcharfun);
--- 233,239 ----
    register int c;
  
    readchar_count++;
! 
    if (BUFFERP (readcharfun))
      {
        register struct buffer *inbuffer = XBUFFER (readcharfun);
***************
*** 411,417 ****
  static Lisp_Object read_internal_start P_ ((Lisp_Object, Lisp_Object,
                                            Lisp_Object));
  static Lisp_Object read0 P_ ((Lisp_Object));
! static Lisp_Object read1 P_ ((Lisp_Object, int *, int)); 
  
  static Lisp_Object read_list P_ ((int, Lisp_Object));
  static Lisp_Object read_vector P_ ((Lisp_Object, int));
--- 411,417 ----
  static Lisp_Object read_internal_start P_ ((Lisp_Object, Lisp_Object,
                                            Lisp_Object));
  static Lisp_Object read0 P_ ((Lisp_Object));
! static Lisp_Object read1 P_ ((Lisp_Object, int *, int));
  
  static Lisp_Object read_list P_ ((int, Lisp_Object));
  static Lisp_Object read_vector P_ ((Lisp_Object, int));
***************
*** 457,463 ****
    if (display_hourglass_p)
      cancel_hourglass ();
  #endif
!   
    delayed_switch_frame = Qnil;
  
    /* Read until we get an acceptable event.  */
--- 457,463 ----
    if (display_hourglass_p)
      cancel_hourglass ();
  #endif
! 
    delayed_switch_frame = Qnil;
  
    /* Read until we get an acceptable event.  */
***************
*** 498,504 ****
                XSETFASTINT (val, XINT (tem1) | XINT (Fcar (Fcdr (tem))));
            }
        }
!         
        /* If we don't have a character now, deal with it appropriately.  */
        if (!INTEGERP (val))
        {
--- 498,504 ----
                XSETFASTINT (val, XINT (tem1) | XINT (Fcar (Fcdr (tem))));
            }
        }
! 
        /* If we don't have a character now, deal with it appropriately.  */
        if (!INTEGERP (val))
        {
***************
*** 709,715 ****
      }
    else
      file = Fsubstitute_in_file_name (file);
!     
  
    /* Avoid weird lossage with null string as arg,
       since it would try to load a directory as a Lisp file */
--- 709,715 ----
      }
    else
      file = Fsubstitute_in_file_name (file);
! 
  
    /* Avoid weird lossage with null string as arg,
       since it would try to load a directory as a Lisp file */
***************
*** 1550,1556 ****
        read_from_string_index_byte = string_char_to_byte (stream, startval);
        read_from_string_limit = endval;
      }
!       
    retval = read0 (stream);
    if (EQ (Vread_with_symbol_positions, Qt)
        || EQ (Vread_with_symbol_positions, stream))
--- 1550,1556 ----
        read_from_string_index_byte = string_char_to_byte (stream, startval);
        read_from_string_limit = endval;
      }
! 
    retval = read0 (stream);
    if (EQ (Vread_with_symbol_positions, Qt)
        || EQ (Vread_with_symbol_positions, stream))
***************
*** 1751,1757 ****
                break;
              }
          }
!       
        *byterep = 1;
        return i;
        }
--- 1751,1757 ----
                break;
              }
          }
! 
        *byterep = 1;
        return i;
        }
***************
*** 1825,1835 ****
        }
        else if (c == '+')
        c = READCHAR;
!   
        while (c >= 0)
        {
          int digit;
!       
          if (c >= '0' && c <= '9')
            digit = c - '0';
          else if (c >= 'a' && c <= 'z')
--- 1825,1835 ----
        }
        else if (c == '+')
        c = READCHAR;
! 
        while (c >= 0)
        {
          int digit;
! 
          if (c >= '0' && c <= '9')
            digit = c - '0';
          else if (c >= 'a' && c <= 'z')
***************
*** 1894,1900 ****
    if (nbytes != *nchars)
      nbytes = str_as_multibyte (read_buffer, read_buffer_size,
                               *p - read_buffer, nchars);
!   
    *p = read_buffer + nbytes;
  }
  
--- 1894,1900 ----
    if (nbytes != *nchars)
      nbytes = str_as_multibyte (read_buffer, read_buffer_size,
                               *p - read_buffer, nchars);
! 
    *p = read_buffer + nbytes;
  }
  
***************
*** 1992,1998 ****
                        == (SCHARS (tmp) - 1) * BITS_PER_CHAR))
                Fsignal (Qinvalid_read_syntax,
                         Fcons (make_string ("#&...", 5), Qnil));
!               
              val = Fmake_bool_vector (length, Qnil);
              bcopy (SDATA (tmp), XBOOL_VECTOR (val)->data,
                     size_in_chars);
--- 1992,1998 ----
                        == (SCHARS (tmp) - 1) * BITS_PER_CHAR))
                Fsignal (Qinvalid_read_syntax,
                         Fcons (make_string ("#&...", 5), Qnil));
! 
              val = Fmake_bool_vector (length, Qnil);
              bcopy (SDATA (tmp), XBOOL_VECTOR (val)->data,
                     size_in_chars);
***************
*** 2047,2053 ****
          UNGCPRO;
          return tmp;
        }
!       
        /* address@hidden is used to skip NUMBER following characters.
         That's used in .elc files to skip over doc strings
         and function definitions.  */
--- 2047,2053 ----
          UNGCPRO;
          return tmp;
        }
! 
        /* address@hidden is used to skip NUMBER following characters.
         That's used in .elc files to skip over doc strings
         and function definitions.  */
***************
*** 2064,2070 ****
            }
          if (c >= 0)
            UNREAD (c);
!         
          if (load_force_doc_strings && EQ (readcharfun, Qget_file_char))
            {
              /* If we are supposed to force doc strings into core right now,
--- 2064,2070 ----
            }
          if (c >= 0)
            UNREAD (c);
! 
          if (load_force_doc_strings && EQ (readcharfun, Qget_file_char))
            {
              /* If we are supposed to force doc strings into core right now,
***************
*** 2170,2176 ****
  
              /* ...and #n# will use the real value from now on.  */
              Fsetcdr (cell, tem);
!             
              return tem;
            }
          /* #n# returns a previously read object.  */
--- 2170,2176 ----
  
              /* ...and #n# will use the real value from now on.  */
              Fsetcdr (cell, tem);
! 
              return tem;
            }
          /* #n# returns a previously read object.  */
***************
*** 2183,2189 ****
            }
          else if (c == 'r' ||  c == 'R')
            return read_integer (readcharfun, n);
!         
          /* Fall through to error message.  */
        }
        else if (c == 'x' || c == 'X')
--- 2183,2189 ----
            }
          else if (c == 'r' ||  c == 'R')
            return read_integer (readcharfun, n);
! 
          /* Fall through to error message.  */
        }
        else if (c == 'x' || c == 'X')
***************
*** 2442,2448 ****
                  p = read_buffer + offset;
                  end = read_buffer + read_buffer_size;
                }
!             
              if (c == '\\')
                {
                  c = READCHAR;
--- 2442,2448 ----
                  p = read_buffer + offset;
                  end = read_buffer + read_buffer_size;
                }
! 
              if (c == '\\')
                {
                  c = READCHAR;
***************
*** 2536,2542 ****
            : intern (read_buffer);
          if (EQ (Vread_with_symbol_positions, Qt)
              || EQ (Vread_with_symbol_positions, readcharfun))
!           Vread_symbol_positions_list = 
              /* Kind of a hack; this will probably fail if characters
                 in the symbol name were escaped.  Not really a big
                 deal, though.  */
--- 2536,2542 ----
            : intern (read_buffer);
          if (EQ (Vread_with_symbol_positions, Qt)
              || EQ (Vread_with_symbol_positions, readcharfun))
!           Vread_symbol_positions_list =
              /* Kind of a hack; this will probably fail if characters
                 in the symbol name were escaped.  Not really a big
                 deal, though.  */
***************
*** 2567,2573 ****
    /* Make all the substitutions. */
    check_object
      = substitute_object_recurse (object, placeholder, object);
!   
    /* Clear seen_list because we're done with it. */
    seen_list = Qnil;
  
--- 2567,2573 ----
    /* Make all the substitutions. */
    check_object
      = substitute_object_recurse (object, placeholder, object);
! 
    /* Clear seen_list because we're done with it. */
    seen_list = Qnil;
  
***************
*** 2611,2617 ****
       read_objects.  */
    if (!EQ (Qnil, Frassq (subtree, read_objects)))
      seen_list = Fcons (subtree, seen_list);
!       
    /* Recurse according to subtree's type.
       Every branch must return a Lisp_Object.  */
    switch (XTYPE (subtree))
--- 2611,2617 ----
       read_objects.  */
    if (!EQ (Qnil, Frassq (subtree, read_objects)))
      seen_list = Fcons (subtree, seen_list);
! 
    /* Recurse according to subtree's type.
       Every branch must return a Lisp_Object.  */
    switch (XTYPE (subtree))
***************
*** 2624,2630 ****
          {
            Lisp_Object idx = make_number (i);
            SUBSTITUTE (Faref (subtree, idx),
!                       Faset (subtree, idx, true_value)); 
          }
        return subtree;
        }
--- 2624,2630 ----
          {
            Lisp_Object idx = make_number (i);
            SUBSTITUTE (Faref (subtree, idx),
!                       Faset (subtree, idx, true_value));
          }
        return subtree;
        }
***************
*** 2645,2651 ****
  
        INTERVAL    root_interval = STRING_INTERVALS (subtree);
        Lisp_Object arg           = Fcons (object, placeholder);
!          
        traverse_intervals_noorder (root_interval,
                                    &substitute_in_interval, arg);
  
--- 2645,2651 ----
  
        INTERVAL    root_interval = STRING_INTERVALS (subtree);
        Lisp_Object arg           = Fcons (object, placeholder);
! 
        traverse_intervals_noorder (root_interval,
                                    &substitute_in_interval, arg);
  
***************
*** 2682,2688 ****
       register char *cp;
  {
    register int state;
!   
    char *start = cp;
  
    state = 0;
--- 2682,2688 ----
       register char *cp;
  {
    register int state;
! 
    char *start = cp;
  
    state = 0;
***************
*** 2813,2819 ****
      }
    return vector;
  }
!   
  /* FLAG = 1 means check for ] to terminate rather than ) and .
     FLAG = -1 means check for starting with defun
      and make structure pure.  */
--- 2813,2819 ----
      }
    return vector;
  }
! 
  /* FLAG = 1 means check for ] to terminate rather than ) and .
     FLAG = -1 means check for starting with defun
      and make structure pure.  */
***************
*** 2832,2838 ****
    struct gcpro gcpro1, gcpro2;
    /* 0 is the normal case.
       1 means this list is a doc reference; replace it with the number 0.
!      2 means this list is a doc reference; replace it with the doc string.  
*/ 
    int doc_reference = 0;
  
    /* Initialize this to 1 if we are reading a list.  */
--- 2832,2838 ----
    struct gcpro gcpro1, gcpro2;
    /* 0 is the normal case.
       1 means this list is a doc reference; replace it with the number 0.
!      2 means this list is a doc reference; replace it with the doc string.  */
    int doc_reference = 0;
  
    /* Initialize this to 1 if we are reading a list.  */
***************
*** 3321,3327 ****
    /* Intern nil in the obarray */
    XSYMBOL (Qnil)->interned = SYMBOL_INTERNED_IN_INITIAL_OBARRAY;
    XSYMBOL (Qnil)->constant = 1;
!   
    /* These locals are to kludge around a pyramid compiler bug. */
    hash = hash_string ("nil", 3);
    /* Separate statement here to avoid VAXC bug. */
--- 3321,3327 ----
    /* Intern nil in the obarray */
    XSYMBOL (Qnil)->interned = SYMBOL_INTERNED_IN_INITIAL_OBARRAY;
    XSYMBOL (Qnil)->constant = 1;
! 
    /* These locals are to kludge around a pyramid compiler bug. */
    hash = hash_string ("nil", 3);
    /* Separate statement here to avoid VAXC bug. */
***************
*** 3454,3460 ****
    SET_SYMBOL_VALUE (sym, val);
    PER_BUFFER_SYMBOL (offset) = sym;
    PER_BUFFER_TYPE (offset) = type;
!   
    if (PER_BUFFER_IDX (offset) == 0)
      /* Did a DEFVAR_PER_BUFFER without initializing the corresponding
         slot of buffer_local_flags */
--- 3454,3460 ----
    SET_SYMBOL_VALUE (sym, val);
    PER_BUFFER_SYMBOL (offset) = sym;
    PER_BUFFER_TYPE (offset) = type;
! 
    if (PER_BUFFER_IDX (offset) == 0)
      /* Did a DEFVAR_PER_BUFFER without initializing the corresponding
         slot of buffer_local_flags */
***************
*** 3626,3633 ****
  #endif
  
  #ifndef WINDOWSNT
!   /* When Emacs is invoked over network shares on NT, PATH_LOADSEARCH is 
!      almost never correct, thereby causing a warning to be printed out that 
       confuses users.  Since PATH_LOADSEARCH is always overridden by the
       EMACSLOADPATH environment variable below, disable the warning on NT.  */
  
--- 3626,3633 ----
  #endif
  
  #ifndef WINDOWSNT
!   /* When Emacs is invoked over network shares on NT, PATH_LOADSEARCH is
!      almost never correct, thereby causing a warning to be printed out that
       confuses users.  Since PATH_LOADSEARCH is always overridden by the
       EMACSLOADPATH environment variable below, disable the warning on NT.  */
  
***************
*** 3750,3756 ****
  Note that a symbol will appear multiple times in this list, if it was
  read multiple times.  The list is in the same order as the symbols
  were read in. */);
!   Vread_symbol_positions_list = Qnil;  
  
    DEFVAR_LISP ("load-path", &Vload_path,
               doc: /* *List of directories to search for files to load.
--- 3750,3756 ----
  Note that a symbol will appear multiple times in this list, if it was
  read multiple times.  The list is in the same order as the symbols
  were read in. */);
!   Vread_symbol_positions_list = Qnil;
  
    DEFVAR_LISP ("load-path", &Vload_path,
               doc: /* *List of directories to search for files to load.
***************
*** 3914,3920 ****
    staticpro (&read_objects);
    read_objects = Qnil;
    staticpro (&seen_list);
!   
    Vloads_in_progress = Qnil;
    staticpro (&Vloads_in_progress);
  }
--- 3914,3920 ----
    staticpro (&read_objects);
    read_objects = Qnil;
    staticpro (&seen_list);
! 
    Vloads_in_progress = Qnil;
    staticpro (&Vloads_in_progress);
  }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]