comparison src/alloca.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 a8d8f419b459
children 0612d54a372a
comparison
equal deleted inserted replaced
2499:4c5ee4d2e921 2500:3d8143fc88e1
337 337
338 /* There must be at least one stack segment. Therefore it is 338 /* There must be at least one stack segment. Therefore it is
339 a fatal error if "trailer" is null. */ 339 a fatal error if "trailer" is null. */
340 340
341 if (trailer == 0) 341 if (trailer == 0)
342 abort (); 342 ABORT ();
343 343
344 /* Discard segments that do not contain our argument address. */ 344 /* Discard segments that do not contain our argument address. */
345 345
346 while (trailer != 0) 346 while (trailer != 0)
347 { 347 {
348 block = (long *) trailer->this_address; 348 block = (long *) trailer->this_address;
349 size = trailer->this_size; 349 size = trailer->this_size;
350 if (block == 0 || size == 0) 350 if (block == 0 || size == 0)
351 abort (); 351 ABORT ();
352 trailer = (struct stk_trailer *) trailer->link; 352 trailer = (struct stk_trailer *) trailer->link;
353 if ((block <= address) && (address < (block + size))) 353 if ((block <= address) && (address < (block + size)))
354 break; 354 break;
355 } 355 }
356 356
365 } 365 }
366 366
367 do 367 do
368 { 368 {
369 if (trailer->this_size <= 0) 369 if (trailer->this_size <= 0)
370 abort (); 370 ABORT ();
371 result += trailer->this_size; 371 result += trailer->this_size;
372 trailer = (struct stk_trailer *) trailer->link; 372 trailer = (struct stk_trailer *) trailer->link;
373 } 373 }
374 while (trailer != 0); 374 while (trailer != 0);
375 375