view src/lastfile.c @ 30403:68e734ab7d5d

(c-looking-at-inexpr-block): Replaced a call to c-beginning-of-statement-1 that caused a bad case of recursion which could consume a lot of CPU in large classes in languages that have in-expression classes (i.e. Java and Pike). (c-guess-basic-syntax): Check for in-expression statements before top level constructs (i.e. case 6 is moved before case 5 and is now case 4) to catch in-expression classes in top level expressions correctly. (c-guess-basic-syntax): Less naive handling of objc-method-intro. Case 4 removed and case 5I added. (c-beginning-of-inheritance-list, c-guess-basic-syntax): Fixed recognition of inheritance lists when the lines begins with a comma. (c-forward-syntactic-ws): Fixed an infloop bug when the buffer ends with a macro continuation char. (c-guess-basic-syntax): Added support for function definitions as statements in Pike. The first statement in a lambda block is now labeled defun-block-intro instead of statement-block-intro. (c-narrow-out-enclosing-class): Whack the state so that the class surrounding point is selected, not the one innermost in the state. (c-guess-basic-syntax): Fixed bug in recognition of switch labels having hanging multiline statements. (c-beginning-of-member-init-list): Broke out some code in c-guess-basic-syntax to a separate function. (c-just-after-func-arglist-p): Fixed recognition of member inits with multiple line arglists. (c-guess-basic-syntax): New case 5B.3 to detect member-init-cont when the commas are in funny places. (c-looking-at-bos): New helper function. (c-looking-at-inexpr-block): More tests to tell inexpr and toplevel classes apart in Pike. (c-guess-basic-syntax): Fixed bogus recognition of case 9A. (c-guess-basic-syntax): Made the cpp-macro a syntax modifier like comment-intro, to make it possible to get syntactic indentation for preprocessor directives. It's incompatible wrt to lineup functions on cpp-macro, but it has no observable effect in the 99.9% common case where cpp-macro is set to -1000. (c-guess-basic-syntax): Fixed bug with missed member-init-cont when the preceding arglist is several lines. (c-beginning-of-statement-1): Fixed bug where we were left at comments preceding the first statement when reaching the beginning of the buffer. (c-beginning-of-closest-statement): New helper function to go back to the closest preceding statement start, which could be inside a conditional statement. (c-guess-basic-syntax): Use c-beginning-of-closest-statement in cases 10B.2, 17B and 17C. (c-guess-basic-syntax): Better handling of arglist-intro, arglist-cont-nonempty and arglist-close when the arglist is nested inside parens. Cases 7A, 7C and 7F changed. (c-beginning-of-statement-1): Fixed handling of multiline Pike type decls. (c-guess-basic-syntax): Fixed bug with fully::qualified::names in C++ member init lists. Preamble in case 5D changed.
author Gerd Moellmann <gerd@gnu.org>
date Mon, 24 Jul 2000 11:11:20 +0000
parents 38b8a103975c
children 695cf19ef79e d7ddb3e565de
line wrap: on
line source

/* Mark end of data space to dump as pure, for GNU Emacs.
   Copyright (C) 1985 Free Software Foundation, Inc.

This file is part of GNU Emacs.

GNU Emacs is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.

GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with GNU Emacs; see the file COPYING.  If not, write to
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.  */


/* How this works:

 Fdump_emacs dumps everything up to my_edata as text space (pure).

 The files of Emacs are written so as to have no initialized
 data that can ever need to be altered except at the first startup.
 This is so that those words can be dumped as sharable text.

 It is not possible to exercise such control over library files.
 So it is necessary to refrain from making their data areas shared.
 Therefore, this file is loaded following all the files of Emacs
 but before library files.
 As a result, the symbol my_edata indicates the point
 in data space between data coming from Emacs and data
 coming from libraries.
*/

#include <config.h>

char my_edata[] = "End of Emacs initialized data";

#ifdef WINDOWSNT
/* Help unexec locate the end of the .bss area used by Emacs (which
   isn't always a separate section in NT executables).  */
char my_endbss[1];

/* The Alpha MSVC linker globally segregates all static and public bss
   data, so we must take both into account to determine the true extent
   of the bss area used by Emacs.  */
static char _my_endbss[1];
char * my_endbss_static = _my_endbss;
#endif