Commit graph

11039 commits

Author SHA1 Message Date
Gerd Moellmann
b33dd3b087 *** empty log message *** 2000-03-20 12:34:21 +00:00
Gerd Moellmann
8ec01c70fa (Fset_buffer_modified_p): Set update_mode_lines
only if buffer is displayed in some window.
2000-03-20 12:24:57 +00:00
Gerd Moellmann
15e26c76c9 (handle_single_display_prop): Initialize local `value'.
(try_window_reusing_current_matrix): Don't call scroll run
function if run's current and desired position are the same;
this prevents cursor flickering.
2000-03-20 12:24:13 +00:00
Stefan Monnier
4e8a913269 (RE_STRING_CHAR): New macro.
(GET_CHAR_AFER_2): Remove.
(RE_TRANSLATE, RE_TRANSLATE_P): New macros moved from regex.h.
(enum re_opcode_t): Remove on_failure_jump_exclusive.
(print_partial_compiled_pattern, re_compile_fastmap)
(re_match_2_internal): Remove on_failure_jump_exclusive.
(regex_compile): Turn optimizable P+ loops into PP*, so that the
optimization only need to work for * (ie. can use of_keep_string_jump).
Remove the special case for .*\n since it is now covered by the general
optimization.
(re_search_2): Don't bother with `room'.
(skip_one_char): New function.
(skip_noops): Simplify since `memory' is not needed any more.
(mutually_exclusive_p): Restructure slightly to use `switch' and
add handling for "all" remaining cases.
(re_match_2_internal): Change on_failure_jump_smart to use
on_failure_keep_string_jump (and redirect the end-of-loop jump)
rather than on_failure_jump_exclusive.
2000-03-19 23:23:50 +00:00
Stefan Monnier
fc4e96c8e8 (RE_TRANSLATE. RE_TRANSLATE_P): Moved to regex.c. 2000-03-19 23:21:42 +00:00
Gerd Moellmann
2136fdd4f5 (calculate_costs): Remove code dealing with X frames. 2000-03-19 17:04:41 +00:00
Gerd Moellmann
94ac875b41 * xfns.c (select_visual): Don't set dpyinfo->n_planes to the
number of bits per RGB because it's everywhere used as the depth
of the visual.
2000-03-19 17:00:51 +00:00
Richard M. Stallman
e53ae11c20 *** empty log message *** 2000-03-19 15:56:23 +00:00
Richard M. Stallman
afdca07054 (syms_of_lread): Doc fix for load-convert-to-unibyte. 2000-03-19 15:45:02 +00:00
Gerd Moellmann
d7b511c441 *** empty log message *** 2000-03-18 01:42:31 +00:00
Gerd Moellmann
b632fa48b1 (read_integer): Unread the last char not consumed. 2000-03-18 01:04:28 +00:00
Gerd Moellmann
16b5d424a7 (x_update_window_cursor): Don't update in frames
who are in the process of being deleted.
2000-03-17 21:12:54 +00:00
Gerd Moellmann
83488cce94 *** empty log message *** 2000-03-16 23:14:29 +00:00
Gerd Moellmann
3320cc503c (mostlyclean): Add `*.core'.
(clean): Add `bootstrap-emacs'.
2000-03-16 22:55:31 +00:00
Gerd Moellmann
1fa2857844 *** empty log message *** 2000-03-16 13:24:56 +00:00
Gerd Moellmann
bf5d1a173b (read_integer): New function.
(read1): Support read syntax #o, #x, #b, #r.
2000-03-16 13:23:06 +00:00
Stefan Monnier
99633e97e9 (re_match_2): Fix string shortening (to fit `stop') to make sure
POINTER_TO_OFFSET gives the same value before and after PREFETCH.
Use `dfail' to guarantee "atomic" matching.
(PTR_TO_OFFSET): Use POINTER_TO_OFFSET.
(debug): Now only active if > 0 rather than if != 0.
(DEBUG_*): Update for the new meaning of `debug'.
(print_partial_compiled_pattern): Add missing `succeed' case.
Use CHARSET_* macros in the charset(_not) branch.
Fix off-by-two bugs in `succeed_n', `jump_n' and `set_number_at'.
(store_op1, store_op2, insert_op1, insert_op2)
(at_begline_loc_p, at_endline_loc_p): Add prototype.
(group_in_compile_stack): Move to after its arg's types are declared
and add a prototype.
(PATFETCH): Define in terms of PATFETCH_RAW.
(GET_UNSIGNED_NUMBER): Add the usual `do { ... } while(0)' wrapper.
(QUIT): Redefine as a nop except for NTemacs.
(regex_compile): Handle intervals {,M} as if it was {0,M}.
Fix indentation of the greedy-op and shy-group code.
(at_(beg|end)line_loc_p): Fix argument's types.
(re_compile_fastmap): Ifdef out failure_stack_ptr to shut up gcc.
(re_search_2): Use POS_AS_IN_BUFFER.  Simplify `room' computation.
(MATCHING_IN_FIRST_STRING): Remove.
(re_match_2): Use POS_AS_IN_BUFFER.
Ifdef out failure_stack_ptr to shut up gcc.
Use FIRST_STRING_P and POINTER_TO_OFFSET.
Use QUIT unconditionally.
2000-03-16 02:55:33 +00:00
Gerd Moellmann
699238d9cd *** empty log message *** 2000-03-15 19:59:06 +00:00
Gerd Moellmann
a1c5aa96e2 (Fminibuffer_complete): Set point to ZV if finding
a sole completion.
2000-03-15 19:58:19 +00:00
Gerd Moellmann
1fb0098cc6 (send_process): Add a hint that the function
can call Lisp code to its comment.
2000-03-15 19:58:03 +00:00
Gerd Moellmann
da84f340a4 (load_dangerous_libraries): New variable.
(Vbytecomp_version_regexp): New variable.
(safe_to_load_p): New function.
(Fload): Handle files not compiled with Emacs specially.
(syms_of_lread): New Lisp variable load-dangerous-libraries.
2000-03-15 19:57:38 +00:00
Gerd Moellmann
9c763cca0b (HAVE_X_I18N) [HAVE_X11R6]: Moved to config.in. 2000-03-14 21:17:59 +00:00
Gerd Moellmann
25e9f929ec (HAVE_X_I18N): Moved here from xterm.h.
(HAVE_X11R6_XIM): Define.
2000-03-14 21:16:55 +00:00
Gerd Moellmann
383d6ffc56 (X_I18N_INHIBITED): Don't define.
(create_frame_xic): Remove conditional compilation on
X_I18N_INHIBITED.
(x_kill_gs_process, x_window): Use FRAME_X_VISUAL.
2000-03-14 21:16:36 +00:00
Gerd Moellmann
32be16dfed (INHIBIT_X11R6_XIM): Define. 2000-03-14 21:16:04 +00:00
Gerd Moellmann
b9de836cab (xim_close_dpy, xim_initialize): Use X11R6-style XIM
support functions only if HAVE_X11R6_XIM is defined.
(xim_instantiate_callback): Define only if HAVE_X11R6_XIM.
2000-03-14 21:15:46 +00:00
Gerd Moellmann
1c7df982a8 (free_frame_xic) [HAVE_X_I18N]: Add missing semicolon. 2000-03-14 21:15:03 +00:00
Gerd Moellmann
34e23e5a04 *** empty log message *** 2000-03-14 15:19:58 +00:00
Stefan Monnier
66f0296e48 * regex.c: Declare a new type `re_char' used throughout the code for the
string char type.  It's `const unsigned char' to match the rest of Emacs.
Consistently make sure all pointers to strings use it and make sure all
pointers into the pattern use `unsigned char'.
(re_match_2_internal): Use `PREFETCH+STRING_CHAR' instead of
GET_CHAR_AFTER_2.
Also merge wordbound and notwordbound to reduce code duplication.
* charset.h (GET_CHAR_AFTER_2): Remove.
(GET_CHAR_BEFORE_2): Use unsigned chars, like everywhere else.
2000-03-14 00:27:57 +00:00
Kenichi Handa
a735b7e1cf *** empty log message *** 2000-03-13 23:33:46 +00:00
Ken Raeburn
854a025cb7 * Makefile.in (temacs): Evaluate ALL_LDFLAGS into a temporary variable before
the invocation of YMF_PASS_LDFLAGS, in case both of them try to use backquotes.
2000-03-13 01:04:12 +00:00
Dave Love
b9d2c7e263 *** empty log message *** 2000-03-12 17:43:39 +00:00
Dave Love
1b963cdda9 Restore changes of 1999-10-19.
(unexec): Don't adjust bss for sbss type SHT_PROGBITS; otherwise
fix its type and alignment; copy it from current process.
2000-03-12 17:04:43 +00:00
Gerd Moellmann
9b2f3c3830 *** empty log message *** 2000-03-12 17:01:50 +00:00
Gerd Moellmann
4ab1d4be61 (cancel_atimer): Break out of the loop as soon as timer
has been found.  Fix bug not computing timer's predecessor.
2000-03-12 17:01:02 +00:00
Gerd Moellmann
9172b88ddf (Fread_file_name): Handle case that DIR contains a
file name.
2000-03-12 16:24:20 +00:00
Gerd Moellmann
e1cff36058 *** empty log message *** 2000-03-12 15:22:51 +00:00
Gerd Moellmann
8ed92cf0f2 (Fsave_window_excursion): Doc fix. 2000-03-12 15:19:21 +00:00
Gerd Moellmann
5e5dff44e7 *** empty log message *** 2000-03-12 13:49:28 +00:00
Gerd Moellmann
7b746c3810 (x_defined_color): Rewritten to use x_allocate_nearest_color. 2000-03-12 12:52:29 +00:00
Eli Zaretskii
e411ce4be0 Mention cursor-type support on MS-DOS terminals. 2000-03-12 12:36:51 +00:00
Eli Zaretskii
8ba01a329c (vga_installed): New function, code moved from
dos_set_window_size.
(Qbar, Qcursor_type, outside_cursor): New variables.
(syms_of_msdos): Intern and staticpro them.
(dos_ttraw) [__DJGPP__ >= 2, !HAVE_X_WINDOWS]: Save the cursor
shape used outside Emacs when called for the first time.
(dos_ttcooked) [__DJGPP__ >= 2, !HAVE_X_WINDOWS]: Restore the
cursor shape used outside Emacs.
(msdos_set_cursor_shape, IT_set_cursor_type): New functions.
(IT_frame_up_to_date): Call IT_set_cursor_type, in case the cursor
type has changed.
(IT_set_frame_parameters): Call IT_set_cursor_type if the frame
parameters specify the cursor.  Make qreverse a global
variable (renamed to Qreverse).
2000-03-12 12:32:17 +00:00
Gerd Moellmann
80460654af *** empty log message *** 2000-03-09 13:40:34 +00:00
Gerd Moellmann
eff9591695 (Fy_or_n_p): Cancel busy-cursor. 2000-03-09 13:34:34 +00:00
Stefan Monnier
95cd4c403d *** empty log message *** 2000-03-08 23:26:00 +00:00
Stefan Monnier
505bde11b0 This is a big redesign of failure-stack and register handling, prompted
by bugs revealed when trying to add shy-groups.  Overall, what happened
is that loops are now structured a little differently, groups can be
shy and the code is a little simpler.

(enum re_opcode_t): Remove jump_past_alt, maybe_pop_jump,
push_dummy_failure and dumy_failure_jump.
Add on_failure_jump_(exclusive, loop and smart).
Also fix the comment for (start|stop)_memory since they now only take
one argument (the second has becomes unnecessary).
(print_partial_compiled_pattern): Adjust for changes in re_opcode_t.
(print_compiled_pattern): Use %ld to printf long ints and flush to make
debugging a little easier.
(union fail_stack_elt): Make the integer unsigned.
(struct fail_stack_type): Add a `frame' element.
(INIT_FAIL_STACK): Init `frame' as well.
(POP_PATTERN_OP): New macro for re_compile_fastmap.
(DEBUG_PUSH, DEBUG_POP): Remove.
(NUM_REG_ITEMS): Remove.
(NUM_NONREG_ITEMS): Adjust.
(FAILURE_PAT, FAILURE_STR, NEXT_FAILURE_HANDLE, TOP_FAILURE_HANDLE):
New macros for the cycle detection.
(ENSURE_FAIL_STACK): New macro for PUSH_FAILURE_(REG|POINT).
(PUSH_FAILURE_REG, POP_FAILURE_REG, CHECK_INFINITE_LOOP): New macros.
(PUSH_FAILURE_POINT): Don't push registers any more.
The pattern address pushed is not the destination of the jump
but the source of it instead.
(NUM_FAILURE_ITEMS): Remove.
(POP_FAILURE_POINT): Adapt to the new stack structure (i.e. pop
registers before the actual failure point).
Don't hardcode any meaning for str==NULL anymore.
(union register_info_type, REG_MATCH_NULL_STRING_P, IS_ACTIVE)
(MATCHED_SOMETHING, EVER_MATCHED_SOMETHING, SET_REGS_MATCHED): Remove.
(REG_UNSET_VALUE): Use NULL (why not?).
(compile_range): Remove declaration since it doesn't exist.
(struct compile_stack_elt_t): Remove inner_group_offset.
(old_reg(start|end), reg_info, reg_dummy, reg_info_dummy): Remove.
(regex_grow_registers): Remove dead code.
(FIXUP_ALT_JUMP): New macro.
(regex_compile): Add shy-groups
Change loops to use	on_failure_jump_smart&jump instead of
on_failure_jump&maybe_pop_jump.
Change + loops to eliminate the initial (dummy_failure_)jump.
Remove c1_base (looks like unused variable to me).
Use `jump' instead of `jump_past_alt' and don't bother with
push_dummy_failure in alternatives since it is now unnecessary.
Use FIXUP_ALT_JUMP.
Eliminate a useless `#ifdef emacs' for (re)allocating the stack.
(re_compile_fastmap): Remove dead variables i and num_regs.
Exit from loop when bufp->can_be_null rather than jumping to `done'.
Avoid jumping backwards so as to ensure termination.
Use PATTERN_STACK_EMPTY and POP_PATTERN_OP.
Improved handling of backreferences.
Remove dead code in handling of `anychar'.
(skip_noops, mutually_exclusive_p): New functions taken from the
handling of `maybe_pop_jump' in re_match_2_internal.
Slightly improve mutually_exclusive_p to handle ".+\n".
((lowest|highest)_active_reg, NO_(LOWEST|HIGHEST)_ACTIVE_REG)
Remove.
(re_match_2_internal): Use %p instead of 0x%x when printf'ing ptrs.
Don't SET_REGS_MATCHED anymore.  Remove many dead variables.
Push register (in `start_memory') on the stack rather than storing it
in old_reg(start|end).
Remove the cycle detection from `stop_memory', replaced by the use
of on_failure_jump_loop for greedy loops.
Add code for the new on_failure_jump_<foo>.
Remove ad-hoc code in `on_failure_jump' to push more registers
in the case of a loop.
Take out code from `maybe_pop_jump' into separate functions and
adapt it to the semantics of `on_failure_jump_smart'.
Remove jump_past_alt, dummy_failure_jump and push_dummy_failure.
Remove dummy_failure handling and handling of `failures to jump
to on_failure_jump' (this last one was already dead code, it seems).
((group|alt|common_op)_match_null_string_p): Remove.
2000-03-08 23:25:41 +00:00
Stefan Monnier
dd52d9705c Update the copyright.
(RE_SHY_GROUPS): New value.
(RE_UNMATCHED_RIGHT_PAREN_ORD): Renumber.
(RE_SYNTAX_EMACS): Add RE_SHY_GROUPS.
2000-03-08 23:24:54 +00:00
Dave Love
7397acc494 (liblw.a): Don't bother testing for ranlib failing
since configure sets it up.
2000-03-08 19:10:01 +00:00
Dave Love
eea0252e83 Use PROTOTYPES. 2000-03-08 18:55:10 +00:00
Dave Love
b369fa6568 (find_handler_clause): Use PROTOTYPES. 2000-03-08 18:53:12 +00:00