Mercurial > hg > xemacs-beta
comparison src/extents.c @ 2500:3d8143fc88e1
[xemacs-hg @ 2005-01-24 23:33:30 by ben]
get working with VC7
config.inc.samp: Declare OPTIONAL_LIBRARY_DIR as root of library directories.
Redo all graphics library defaults to mirror the versions and
directories in the current binary aux distribution on xemacs
web site. Enable TIFF and COMPFACE by default since you can
now compile with them and binary libs are provided.
xemacs.mak: Put our own directories first in case of conflict (e.g. config.h
in compface).
xemacs.mak: Use MSVCRT to avoid link problems.
s/windowsnt.h:
bytecode.c, print.c: Add casts to avoid warning.
compiler.h: Add MSC_VERSION and include definitions of DOESNT_RETURN and
friends here, like for GCC. Need different definitions for VC7
and VC6.
s/windowsnt.h: Remove stuff moved to compiler.h. Disable warning 4646 ("function
declared with __declspec(noreturn) has non-void return type")
on VC7 since lots of Lisp primitives trigger this and there is
no easy way to kludge around the warning.
glyphs-eimage.c: Some really nasty hacks to allow TIFF and JPEG to both be compiled.
#### The better solution is to move the TIFF and JPEG code to
different files.
glyphs-msw.c: Define __STDC__ to avoid problems with compface.h.
intl-auto-encap-win32.c, intl-auto-encap-win32.h, intl-encap-win32.c, syswindows.h: Those wankers at Microsoft cannot leave well enough alone.
Various functions change parameter types semi-randomly between
VC6 and VC7, so we need to include our own versions that
can handle both kinds with appropriate casting.
EmacsFrame.c, EmacsShell-sub.c, EmacsShell.c, alloc.c, alloca.c, buffer.c, bytecode.c, charset.h, chartab.c, cm.c, console-stream.c, console.c, data.c, debug.h, device-msw.c, device-tty.c, device-x.c, doprnt.c, dumper.c, dynarr.c, elhash.c, emacs.c, eval.c, event-Xt.c, event-gtk.c, event-msw.c, event-stream.c, events.c, extents.c, faces.c, file-coding.c, fileio.c, fns.c, font-lock.c, frame-gtk.c, frame-x.c, frame.c, free-hook.c, gccache-gtk.c, glyphs-eimage.c, glyphs-gtk.c, glyphs-msw.c, glyphs-x.c, glyphs.c, gtk-glue.c, gutter.c, input-method-xlib.c, insdel.c, intl-win32.c, keymap.c, lisp.h, lread.c, lstream.c, macros.c, malloc.c, menubar-gtk.c, menubar-msw.c, menubar-x.c, mule-coding.c, native-gtk-toolbar.c, number.c, objects-msw.c, objects.c, print.c, process-nt.c, process-unix.c, process.c, ralloc.c, rangetab.c, redisplay-gtk.c, redisplay-msw.c, redisplay-output.c, redisplay-tty.c, redisplay-x.c, redisplay.c, regex.c, scrollbar-gtk.c, scrollbar-x.c, search.c, select-x.c, signal.c, specifier.c, specifier.h, strftime.c, sunplay.c, symbols.c, sysdep.c, sysproc.h, text.c, text.h, toolbar-common.c, toolbar-msw.c, toolbar.c, ui-gtk.c, unexnt.c, unicode.c, win32.c, window.c, xgccache.c, s/windowsnt.h: abort() -> ABORT(). Eliminate preprocessor games with abort()
since it creates huge problems in VC7, solvable only by including
massive amounts of files in every compile (and not worth it).
author | ben |
---|---|
date | Mon, 24 Jan 2005 23:34:34 +0000 |
parents | ecf1ebac70d8 |
children | 8c96bdabcaf9 |
comparison
equal
deleted
inserted
replaced
2499:4c5ee4d2e921 | 2500:3d8143fc88e1 |
---|---|
2018 { | 2018 { |
2019 case ME_ALL_EXTENTS_CLOSED: start_open = 0, end_open = 0; break; | 2019 case ME_ALL_EXTENTS_CLOSED: start_open = 0, end_open = 0; break; |
2020 case ME_ALL_EXTENTS_OPEN: start_open = 1, end_open = 1; break; | 2020 case ME_ALL_EXTENTS_OPEN: start_open = 1, end_open = 1; break; |
2021 case ME_ALL_EXTENTS_CLOSED_OPEN: start_open = 0, end_open = 1; break; | 2021 case ME_ALL_EXTENTS_CLOSED_OPEN: start_open = 0, end_open = 1; break; |
2022 case ME_ALL_EXTENTS_OPEN_CLOSED: start_open = 1, end_open = 0; break; | 2022 case ME_ALL_EXTENTS_OPEN_CLOSED: start_open = 1, end_open = 0; break; |
2023 default: abort(); return 0; | 2023 default: ABORT(); return 0; |
2024 } | 2024 } |
2025 | 2025 |
2026 start = buffer_or_string_bytexpos_to_startind (obj, from, | 2026 start = buffer_or_string_bytexpos_to_startind (obj, from, |
2027 flags & ME_START_OPEN); | 2027 flags & ME_START_OPEN); |
2028 end = buffer_or_string_bytexpos_to_endind (obj, to, | 2028 end = buffer_or_string_bytexpos_to_endind (obj, to, |
2054 retval = start <= exs && exe <= end; break; | 2054 retval = start <= exs && exe <= end; break; |
2055 case ME_START_OR_END_IN_REGION: | 2055 case ME_START_OR_END_IN_REGION: |
2056 retval = (start <= exs && exs <= end) || (start <= exe && exe <= end); | 2056 retval = (start <= exs && exs <= end) || (start <= exe && exe <= end); |
2057 break; | 2057 break; |
2058 default: | 2058 default: |
2059 abort(); return 0; | 2059 ABORT(); return 0; |
2060 } | 2060 } |
2061 return flags & ME_NEGATE_IN_REGION ? !retval : retval; | 2061 return flags & ME_NEGATE_IN_REGION ? !retval : retval; |
2062 } | 2062 } |
2063 | 2063 |
2064 struct map_extents_struct | 2064 struct map_extents_struct |
3159 const char *name = ""; | 3159 const char *name = ""; |
3160 const char *posttitle = ""; | 3160 const char *posttitle = ""; |
3161 Lisp_Object obj2 = Qnil; | 3161 Lisp_Object obj2 = Qnil; |
3162 | 3162 |
3163 /* Destroyed extents have 't' in the object field, causing | 3163 /* Destroyed extents have 't' in the object field, causing |
3164 extent_object() to abort (maybe). */ | 3164 extent_object() to ABORT (maybe). */ |
3165 if (EXTENT_LIVE_P (XEXTENT (obj))) | 3165 if (EXTENT_LIVE_P (XEXTENT (obj))) |
3166 obj2 = extent_object (XEXTENT (obj)); | 3166 obj2 = extent_object (XEXTENT (obj)); |
3167 | 3167 |
3168 if (NILP (obj2)) | 3168 if (NILP (obj2)) |
3169 title = "no buffer"; | 3169 title = "no buffer"; |
4779 the insertion overlaps any existing extent, something is wrong. | 4779 the insertion overlaps any existing extent, something is wrong. |
4780 */ | 4780 */ |
4781 #ifdef ERROR_CHECK_EXTENTS | 4781 #ifdef ERROR_CHECK_EXTENTS |
4782 if (extent_start (extent) > indice && | 4782 if (extent_start (extent) > indice && |
4783 extent_start (extent) < indice + closure->length) | 4783 extent_start (extent) < indice + closure->length) |
4784 abort (); | 4784 ABORT (); |
4785 if (extent_end (extent) > indice && | 4785 if (extent_end (extent) > indice && |
4786 extent_end (extent) < indice + closure->length) | 4786 extent_end (extent) < indice + closure->length) |
4787 abort (); | 4787 ABORT (); |
4788 #endif | 4788 #endif |
4789 | 4789 |
4790 /* The extent-adjustment code adjusted the extent's endpoints as if | 4790 /* The extent-adjustment code adjusted the extent's endpoints as if |
4791 all extents were closed-open -- endpoints at the insertion point | 4791 all extents were closed-open -- endpoints at the insertion point |
4792 remain unchanged. We need to fix the other kinds of extents: | 4792 remain unchanged. We need to fix the other kinds of extents: |
5280 case GL_TEXT: return Qtext; | 5280 case GL_TEXT: return Qtext; |
5281 case GL_OUTSIDE_MARGIN: return Qoutside_margin; | 5281 case GL_OUTSIDE_MARGIN: return Qoutside_margin; |
5282 case GL_INSIDE_MARGIN: return Qinside_margin; | 5282 case GL_INSIDE_MARGIN: return Qinside_margin; |
5283 case GL_WHITESPACE: return Qwhitespace; | 5283 case GL_WHITESPACE: return Qwhitespace; |
5284 default: | 5284 default: |
5285 abort (); | 5285 ABORT (); |
5286 return Qnil; /* unreached */ | 5286 return Qnil; /* unreached */ |
5287 } | 5287 } |
5288 } | 5288 } |
5289 | 5289 |
5290 static glyph_layout | 5290 static glyph_layout |