annotate src/firstfile.c @ 95397:c99f0a16c077

(CODING_UTF_8_BOM): New macro. (enum coding_category): Delete coding_category_utf_8, add coding_category_utf_8_auto, coding_category_utf_8_nosig, and coding_category_utf_8_sig. (CATEGORY_MASK_UTF_8): Delete it. (CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG) (CATEGORY_MASK_UTF_8_SIG): New macros. (CATEGORY_MASK_ANY): Delete CATEGORY_MASK_UTF_8, add CATEGORY_MASK_UTF_8_AUTO, CATEGORY_MASK_UTF_8_NOSIG, and CATEGORY_MASK_UTF_8_SIG. (CATEGORY_MASK_UTF_8): New macro. (UTF_BOM, UTF_8_BOM_1, UTF_8_BOM_2, UTF_8_BOM_3): New macros. (detect_coding_utf_8): Check BOM. (decode_coding_utf_8, encode_coding_utf_8): Handle BOM. (decode_coding_utf_16): Adjusted for the change of enum utf_bom_type. (encode_coding_utf_16): Likewise. (setup_coding_system): Likewise. Set CODING_UTF_8_BOM (coding). (detect_coding, detect_coding_system): Handle utf-8-auto. (Fdefine_coding_system_internal): Handle `bom' property for utf-8. (syms_of_coding): Fix setting up of Vcoding_category_table.
author Kenichi Handa <handa@m17n.org>
date Thu, 29 May 2008 22:58:15 +0000
parents 8971ddf55736
children e038c1a8307c
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
19794
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
1 /* Mark beginning of data space to dump as pure, for GNU Emacs.
75227
e90d04cd455a Update copyright for years from Emacs 21 to present (mainly adding
Glenn Morris <rgm@gnu.org>
parents: 68651
diff changeset
2 Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005,
79759
fc2bcd2a8aad Add 2008 to copyright years.
Glenn Morris <rgm@gnu.org>
parents: 78260
diff changeset
3 2006, 2007, 2008 Free Software Foundation, Inc.
19794
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
4
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
5 This file is part of GNU Emacs.
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
6
94963
8971ddf55736 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79759
diff changeset
7 GNU Emacs is free software: you can redistribute it and/or modify
19794
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
8 it under the terms of the GNU General Public License as published by
94963
8971ddf55736 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79759
diff changeset
9 the Free Software Foundation, either version 3 of the License, or
8971ddf55736 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79759
diff changeset
10 (at your option) any later version.
19794
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
11
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
12 GNU Emacs is distributed in the hope that it will be useful,
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
15 GNU General Public License for more details.
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
16
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
17 You should have received a copy of the GNU General Public License
94963
8971ddf55736 Switch to recommended form of GPLv3 permissions notice.
Glenn Morris <rgm@gnu.org>
parents: 79759
diff changeset
18 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
19794
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
19
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
20
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
21 #include <config.h>
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
22
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
23 #ifdef WINDOWSNT
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
24 /* See comments in lastfile.c. */
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
25 char my_begdata[] = "Beginning of Emacs initialized data";
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
26 char my_begbss[1]; /* Do not initialize this variable. */
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
27 static char _my_begbss[1];
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
28 char * my_begbss_static = _my_begbss;
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
29
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
30 /* Add a dummy reference to ensure emacs.obj is linked in. */
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
31 extern int initialized;
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
32 static int * dummy = &initialized;
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
33 #endif
3f3165285c1b Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
34
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 19794
diff changeset
35 /* arch-tag: a6c0d2dd-00c3-4ba5-95a5-9c8ab82f39b2
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 19794
diff changeset
36 (do not change this comment) */