diff options
Diffstat (limited to 'devel/omake/patches/patch-at')
-rw-r--r-- | devel/omake/patches/patch-at | 364 |
1 files changed, 364 insertions, 0 deletions
diff --git a/devel/omake/patches/patch-at b/devel/omake/patches/patch-at new file mode 100644 index 00000000000..743c5a3bb23 --- /dev/null +++ b/devel/omake/patches/patch-at @@ -0,0 +1,364 @@ +$NetBSD: patch-at,v 1.1 2010/12/17 09:40:14 wiz Exp $ + +From upstream SVN. + +--- src/libmojave-external/util/lm_channel.ml.orig 2007-07-16 21:10:43.000000000 +0000 ++++ src/libmojave-external/util/lm_channel.ml +@@ -337,12 +337,10 @@ let of_string s = + of_string string_sym 1 0 (String.copy s) + + let info channel = +- let { channel_id = id; +- channel_kind = kind; +- channel_mode = mode; +- channel_binary = binary +- } = channel +- in ++ let id = channel.channel_id in ++ let kind = channel.channel_kind in ++ let mode = channel.channel_mode in ++ let binary = channel.channel_binary in + id, kind, mode, binary + + let name channel = +@@ -468,13 +466,11 @@ let squash_text buffer off amount = + * Get the line/char for a particular point in the input buffer. + *) + let line_of_index info buffer index = +- let { start_line = start_line; +- start_char = start_char; +- middle_index = middle_index; +- middle_line = middle_line; +- middle_char = middle_char +- } = info +- in ++ let start_line = info.start_line in ++ let start_char = info.start_char in ++ let middle_index = info.middle_index in ++ let middle_line = info.middle_line in ++ let middle_char = info.middle_char in + let rec search line char i = + if i = index then + begin +@@ -509,12 +505,10 @@ let reset_input_buffer info = + info.lex_index <- 0 + + let shift_input_buffer info = +- let { in_buffer = in_buffer; +- in_index = in_index; +- lex_index = lex_index; +- in_max = in_max +- } = info +- in ++ let in_buffer = info.in_buffer in ++ let in_index = info.in_index in ++ let lex_index = info.lex_index in ++ let in_max = info.in_max in + let line, char = line_of_index info in_buffer in_index in + String.blit in_buffer in_index in_buffer 0 (in_max - in_index); + info.start_line <- line; +@@ -562,10 +556,8 @@ let reset_output_buffer info = + * flushing. + *) + let expand_output info = +- let { out_buffer = buffer; +- out_max = max +- } = info +- in ++ let buffer = info.out_buffer in ++ let max = info.out_max in + if max = String.length buffer then begin + let buffer2 = String.create (max * 2) in + String.blit buffer 0 buffer2 0 max; +@@ -575,10 +567,8 @@ let expand_output info = + end + + let to_string info = +- let { out_buffer = buffer; +- out_max = max +- } = info +- in ++ let buffer = info.out_buffer in ++ let max = info.out_max in + String.sub buffer 0 max + + (************************************************************************ +@@ -614,12 +604,10 @@ let setup_write_buffer info = + *) + let flush_output_once info = + setup_write_buffer info; +- let { write_index = off; +- write_max = max; +- write_buffer = buf; +- write_fun = write +- } = info +- in ++ let off = info.write_index in ++ let max = info.write_max in ++ let buf = info.write_buffer in ++ let write = info.write_fun in + let count = write buf off (max - off) in + let off' = off + count in + if off' = max then +@@ -632,17 +620,13 @@ let flush_output_once info = + *) + let flush_aux info = + setup_write_buffer info; +- let { write_buffer = buf; +- write_fun = writer +- } = info +- in ++ let buf = info.write_buffer in ++ let writer = info.write_fun in + + (* Now write the data directly *) + let rec write () = +- let { write_index = index; +- write_max = max +- } = info +- in ++ let index = info.write_index in ++ let max = info.write_max in + let len = max - index in + if len <> 0 then + let count = writer buf index len in +@@ -701,10 +685,8 @@ let close info = + * Print a byte. + *) + let rec output_char info c = +- let { out_max = max; +- out_buffer = buffer +- } = info +- in ++ let max = info.out_max in ++ let buffer = info.out_buffer in + flush_input info; + if max = String.length buffer then + begin +@@ -724,10 +706,8 @@ let output_byte info c = + * Write a substring. + *) + let rec output_buffer info buf off len = +- let { out_max = max; +- out_buffer = buffer +- } = info +- in ++ let max = info.out_max in ++ let buffer = info.out_buffer in + let avail = String.length buffer - max in + flush_input info; + if len <> 0 then +@@ -758,21 +738,17 @@ let write info buf off len = + * Check if there is input already in the buffer. + *) + let poll info = +- let { in_index = index; +- in_max = max +- } = info +- in ++ let index = info.in_index in ++ let max = info.in_max in + index <> max + + (* + * Get data when the buffer is empty. + *) + let fillbuf info = +- let { channel_binary = binary; +- in_buffer = buf; +- read_fun = reader +- } = info +- in ++ let binary = info.channel_binary in ++ let buf = info.in_buffer in ++ let reader = info.read_fun in + let count = reader buf 0 buf_size in + let count = + if count = 0 then +@@ -797,11 +773,9 @@ let fillbuf info = + * Get a single char. + *) + let rec input_char info = +- let { in_index = index; +- in_max = max; +- in_buffer = buf; +- } = info +- in ++ let index = info.in_index in ++ let max = info.in_max in ++ let buf = info.in_buffer in + flush_output info; + if index = max then + begin +@@ -823,11 +797,9 @@ let input_byte info = + * Read data into a buffer. + *) + let rec input_buffer info s off len = +- let { in_index = index; +- in_max = max; +- in_buffer = buf +- } = info +- in ++ let index = info.in_index in ++ let max = info.in_max in ++ let buf = info.in_buffer in + let avail = max - index in + flush_output info; + if len <> 0 then +@@ -884,12 +856,10 @@ let input_entire_line info = + * Read allows for partial reading. + *) + let read info s off len = +- let { in_index = index; +- in_max = max; +- in_buffer = buf; +- read_fun = reader +- } = info +- in ++ let index = info.in_index in ++ let max = info.in_max in ++ let buf = info.in_buffer in ++ let reader = info.read_fun in + let avail = max - index in + flush_output info; + if avail = 0 then +@@ -925,13 +895,11 @@ let seek info pos whence = + * Get the current location. + *) + let loc info = +- let { out_max = out_max; +- in_index = in_index; +- in_buffer = in_buffer; +- out_buffer = out_buffer; +- channel_file = file +- } = info +- in ++ let out_max = info.out_max in ++ let in_index = info.in_index in ++ let in_buffer = info.in_buffer in ++ let out_buffer = info.out_buffer in ++ let file = info.channel_file in + let line, char = + if out_max <> 0 then + line_of_index info out_buffer out_max +@@ -1132,10 +1100,8 @@ struct + * Start lex mode. + *) + let lex_start channel = +- let { in_index = index; +- in_buffer = buffer +- } = channel +- in ++ let index = channel.in_index in ++ let buffer = channel.in_buffer in + let prev = + if index = 0 then + bof +@@ -1149,10 +1115,8 @@ struct + * Restart at a previous position. + *) + let lex_restart channel pos = +- let { in_max = max; +- in_index = index +- } = channel +- in ++ let max = channel.in_max in ++ let index = channel.in_index in + assert (pos >= 0 && pos <= max - index); + channel.lex_index <- index + pos + +@@ -1168,20 +1132,16 @@ struct + * Get the string matched by the lexer. + *) + let lex_string channel pos = +- let { in_index = start; +- in_buffer = buffer +- } = channel +- in ++ let start = channel.in_index in ++ let buffer = channel.in_buffer in + String.sub buffer start pos + + (* + * Get the string matched by the lexer. + *) + let lex_substring channel off len = +- let { in_index = start; +- in_buffer = buffer +- } = channel +- in ++ let start = channel.in_index in ++ let buffer = channel.in_buffer in + String.sub buffer (start + off) len + + (* +@@ -1189,13 +1149,11 @@ struct + * We can't discard any of the existing data. + *) + let rec lex_fill channel = +- let { in_max = max; +- in_buffer = buffer; +- in_index = start; +- read_fun = reader; +- channel_binary = binary +- } = channel +- in ++ let max = channel.in_max in ++ let buffer = channel.in_buffer in ++ let start = channel.in_index in ++ let reader = channel.read_fun in ++ let binary = channel.channel_binary in + let len = String.length buffer in + let amount = len - max in + (* If we have space, fill it *) +@@ -1245,11 +1203,9 @@ struct + * Get the next character in lex mode. + *) + let lex_next channel = +- let { in_max = max; +- in_buffer = buffer; +- lex_index = index +- } = channel +- in ++ let max = channel.in_max in ++ let buffer = channel.in_buffer in ++ let index = channel.lex_index in + if index = max then + lex_fill channel + else +@@ -1267,14 +1223,12 @@ struct + * Get the location of the buffer. + *) + let lex_loc channel off = +- let { start_line = line; +- start_char = char; +- channel_file = file; +- lex_index = index; +- in_buffer = buffer; +- in_max = max +- } = channel +- in ++ let line = channel.start_line in ++ let char = channel.start_char in ++ let file = channel.channel_file in ++ let index = channel.lex_index in ++ let buffer = channel.in_buffer in ++ let max = channel.in_max in + let line1, char1 = + if index > max then + line, char +@@ -1293,11 +1247,9 @@ struct + * Add any remaining buffered text to a buffer. + *) + let lex_buffer channel buf = +- let { in_max = max; +- in_buffer = buffer; +- in_index = start +- } = channel +- in ++ let max = channel.in_max in ++ let buffer = channel.in_buffer in ++ let start = channel.in_index in + Buffer.add_substring buf buffer start (max - start); + channel.in_index <- max + end |