comparison src/font-lock.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 6f2158fa75ed
comparison
equal deleted inserted replaced
2499:4c5ee4d2e921 2500:3d8143fc88e1
527 if (context_cache.context == context_none) 527 if (context_cache.context == context_none)
528 { 528 {
529 context_cache.context = context_comment; 529 context_cache.context = context_comment;
530 context_cache.ccontext = ccontext_none; 530 context_cache.ccontext = ccontext_none;
531 context_cache.style = SINGLE_SYNTAX_STYLE (syncode); 531 context_cache.style = SINGLE_SYNTAX_STYLE (syncode);
532 if (context_cache.style == comment_style_none) abort (); 532 if (context_cache.style == comment_style_none) ABORT ();
533 } 533 }
534 break; 534 break;
535 535
536 case Sendcomment: 536 case Sendcomment:
537 if (context_cache.style != SINGLE_SYNTAX_STYLE (syncode)) 537 if (context_cache.style != SINGLE_SYNTAX_STYLE (syncode))
619 SYNTAX_CODES_START_P (prev_syncode, syncode) /* the two chars match */ 619 SYNTAX_CODES_START_P (prev_syncode, syncode) /* the two chars match */
620 ) 620 )
621 { 621 {
622 context_cache.ccontext = ccontext_start2; 622 context_cache.ccontext = ccontext_start2;
623 context_cache.style = SYNTAX_START_STYLE (prev_syncode, syncode); 623 context_cache.style = SYNTAX_START_STYLE (prev_syncode, syncode);
624 if (context_cache.style == comment_style_none) abort (); 624 if (context_cache.style == comment_style_none) ABORT ();
625 } 625 }
626 else if ((SYNTAX_CODE_COMMENT_BITS (syncode) & 626 else if ((SYNTAX_CODE_COMMENT_BITS (syncode) &
627 SYNTAX_FIRST_CHAR_START) && 627 SYNTAX_FIRST_CHAR_START) &&
628 context_cache.context == context_none && 628 context_cache.context == context_none &&
629 (context_cache.ccontext == ccontext_none || 629 (context_cache.ccontext == ccontext_none ||
657 /* #### is it right to check for end1 here?? 657 /* #### is it right to check for end1 here??
658 yes, because this might be a repetition of the first char 658 yes, because this might be a repetition of the first char
659 of a comment-end sequence. ie, '/xxx foo xxx/' or 659 of a comment-end sequence. ie, '/xxx foo xxx/' or
660 '/xxx foo x/', where 'x' = '*' -- mct */ 660 '/xxx foo x/', where 'x' = '*' -- mct */
661 { 661 {
662 if (context_cache.style == comment_style_none) abort (); 662 if (context_cache.style == comment_style_none) ABORT ();
663 context_cache.ccontext = ccontext_end1; 663 context_cache.ccontext = ccontext_end1;
664 } 664 }
665 665
666 else if (context_cache.ccontext == ccontext_start1) 666 else if (context_cache.ccontext == ccontext_start1)
667 { 667 {
668 if (context_cache.context != context_none) abort (); 668 if (context_cache.context != context_none) ABORT ();
669 context_cache.ccontext = ccontext_none; 669 context_cache.ccontext = ccontext_none;
670 } 670 }
671 else if (context_cache.ccontext == ccontext_end1) 671 else if (context_cache.ccontext == ccontext_end1)
672 { 672 {
673 if (context_cache.context != context_block_comment) abort (); 673 if (context_cache.context != context_block_comment) ABORT ();
674 context_cache.context = context_none; 674 context_cache.context = context_none;
675 context_cache.ccontext = ccontext_start2; 675 context_cache.ccontext = ccontext_start2;
676 } 676 }
677 677
678 if (context_cache.ccontext == ccontext_start2 && 678 if (context_cache.ccontext == ccontext_start2 &&
679 context_cache.context == context_none) 679 context_cache.context == context_none)
680 { 680 {
681 context_cache.context = context_block_comment; 681 context_cache.context = context_block_comment;
682 if (context_cache.style == comment_style_none) abort (); 682 if (context_cache.style == comment_style_none) ABORT ();
683 } 683 }
684 else if (context_cache.ccontext == ccontext_none && 684 else if (context_cache.ccontext == ccontext_none &&
685 context_cache.context == context_block_comment) 685 context_cache.context == context_block_comment)
686 { 686 {
687 context_cache.context = context_none; 687 context_cache.context = context_none;
701 case context_string: return Qstring; 701 case context_string: return Qstring;
702 case context_comment: return Qcomment; 702 case context_comment: return Qcomment;
703 case context_block_comment: return Qblock_comment; 703 case context_block_comment: return Qblock_comment;
704 case context_generic_comment: return Qblock_comment; 704 case context_generic_comment: return Qblock_comment;
705 case context_generic_string: return Qstring; 705 case context_generic_string: return Qstring;
706 default: abort (); return Qnil; /* suppress compiler warning */ 706 default: ABORT (); return Qnil; /* suppress compiler warning */
707 } 707 }
708 } 708 }
709 709
710 DEFUN ("buffer-syntactic-context", Fbuffer_syntactic_context, 0, 1, 0, /* 710 DEFUN ("buffer-syntactic-context", Fbuffer_syntactic_context, 0, 1, 0, /*
711 Return the syntactic context of BUFFER at point. 711 Return the syntactic context of BUFFER at point.