<feed xmlns='http://www.w3.org/2005/Atom'>
<title>emacs/lib-src, branch scratch/faster-loaddefs</title>
<subtitle>Emacs is the extensible, customizable, self-documenting real-time display editor. 
</subtitle>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/'/>
<entry>
<title>Audit quoting symbols in C doc strings</title>
<updated>2022-05-24T09:51:18+00:00</updated>
<author>
<name>Lars Ingebrigtsen</name>
</author>
<published>2022-05-24T09:51:18+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=59951f7af5877221a25d66a1344b649c6872bac6'/>
<id>59951f7af5877221a25d66a1344b649c6872bac6</id>
<content type='text'>
* test/manual/etags/c-src/emacs/src/keyboard.c (Frecursive_edit):
* src/xfns.c (syms_of_xfns):
* src/xdisp.c (Fwindow_text_pixel_size):
(syms_of_xdisp):
* src/w32notify.c (Fw32notify_add_watch):
(Fw32notify_add_watch):
* src/frame.c (Fframe_child_frame_border_width):
* src/comp.c (Fcomp__subr_signature):
* src/alloc.c (Fgarbage_collect):
* lib-src/make-docfile.c (scan_c_stream): Audit quoting symbols in C
doc strings.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* test/manual/etags/c-src/emacs/src/keyboard.c (Frecursive_edit):
* src/xfns.c (syms_of_xfns):
* src/xdisp.c (Fwindow_text_pixel_size):
(syms_of_xdisp):
* src/w32notify.c (Fw32notify_add_watch):
(Fw32notify_add_watch):
* src/frame.c (Fframe_child_frame_border_width):
* src/comp.c (Fcomp__subr_signature):
* src/alloc.c (Fgarbage_collect):
* lib-src/make-docfile.c (scan_c_stream): Audit quoting symbols in C
doc strings.
</pre>
</div>
</content>
</entry>
<entry>
<title>Pacify GCC 12 in default developer build</title>
<updated>2022-05-13T00:03:55+00:00</updated>
<author>
<name>Paul Eggert</name>
</author>
<published>2022-05-13T00:01:10+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=0f731c49e6a8ccf3aa4c30c3f8ca82ed0a2cefb7'/>
<id>0f731c49e6a8ccf3aa4c30c3f8ca82ed0a2cefb7</id>
<content type='text'>
This lets ‘./configure; make’ work on Fedora 36 x86-64 from a Git
checkout without generating false-alarm warnings.
* lib-src/etags.c (main): There appeared to be false alarm with
GCC 12.  However, the code was wrong anyway, as it mishandled file
names containing "'" so fix that bug.  This pacifies GCC.
(mercury_decl): Omit tests ‘s + pos != NULL’ that were apparently
intended to be ‘s[pos] != '\0'’ but which were miscoded to always
be true and which were mostly not needed anyway.  In one place,
though, a test was needed, so fix that by using strchr instead.
* src/alloc.c (lisp_free) [!GC_MALLOC_CHECK]:
* src/term.c (Fsuspend_tty): Don’t look at a pointer after freeing
it, even just to test it for equality with some other pointer, as
this has undefined behavior in C and GCC 12 diagnoses this.
* src/dbusbind.c (xd_read_message_1): Rework the code a bit
so that it has fewer tests.  This pacifies GCC 12 which was
complaining incorrectly about dereferencing a null pointer.
* src/intervals.c (copy_properties): Remove an eassume that should
no longer be needed even to pacify older GCCs, due to ...
* src/intervals.h (split_interval_left): ... this addition of
ATTRIBUTE_RETURNS_NONNULL to pacify a GCC 12 warning about
dereferencing a null pointer.
* src/regex-emacs.c (EXTEND_BUFFER): Use negative values rather
than auxiliary booleans to indicate null pointers.  This pacifies
GCC 12 false alarms about using uninitialized variables.
* src/xdisp.c (clear_position): New function.
(append_space_for_newline, extend_face_to_end_of_line):
Use it to work around false alarms from GCC 12.
(display_and_set_cursor): Add an UNINIT to pacify GCC 12.
* src/xterm.c (x_draw_glyphless_glyph_string_foreground):
Defend against hypothetical bad code elsewhere;
this also pacifies GCC 12.
(x_term_init): Use fixed-size auto array rather than alloca,
as the array is small; this also pacifies GCC 12.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This lets ‘./configure; make’ work on Fedora 36 x86-64 from a Git
checkout without generating false-alarm warnings.
* lib-src/etags.c (main): There appeared to be false alarm with
GCC 12.  However, the code was wrong anyway, as it mishandled file
names containing "'" so fix that bug.  This pacifies GCC.
(mercury_decl): Omit tests ‘s + pos != NULL’ that were apparently
intended to be ‘s[pos] != '\0'’ but which were miscoded to always
be true and which were mostly not needed anyway.  In one place,
though, a test was needed, so fix that by using strchr instead.
* src/alloc.c (lisp_free) [!GC_MALLOC_CHECK]:
* src/term.c (Fsuspend_tty): Don’t look at a pointer after freeing
it, even just to test it for equality with some other pointer, as
this has undefined behavior in C and GCC 12 diagnoses this.
* src/dbusbind.c (xd_read_message_1): Rework the code a bit
so that it has fewer tests.  This pacifies GCC 12 which was
complaining incorrectly about dereferencing a null pointer.
* src/intervals.c (copy_properties): Remove an eassume that should
no longer be needed even to pacify older GCCs, due to ...
* src/intervals.h (split_interval_left): ... this addition of
ATTRIBUTE_RETURNS_NONNULL to pacify a GCC 12 warning about
dereferencing a null pointer.
* src/regex-emacs.c (EXTEND_BUFFER): Use negative values rather
than auxiliary booleans to indicate null pointers.  This pacifies
GCC 12 false alarms about using uninitialized variables.
* src/xdisp.c (clear_position): New function.
(append_space_for_newline, extend_face_to_end_of_line):
Use it to work around false alarms from GCC 12.
(display_and_set_cursor): Add an UNINIT to pacify GCC 12.
* src/xterm.c (x_draw_glyphless_glyph_string_foreground):
Defend against hypothetical bad code elsewhere;
this also pacifies GCC 12.
(x_term_init): Use fixed-size auto array rather than alloca,
as the array is small; this also pacifies GCC 12.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge from origin/emacs-28</title>
<updated>2022-04-17T20:10:19+00:00</updated>
<author>
<name>Paul Eggert</name>
</author>
<published>2022-04-17T20:10:19+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=6662079b9025d437477e58a81af994a6513d7408'/>
<id>6662079b9025d437477e58a81af994a6513d7408</id>
<content type='text'>
3cccf0a910 Don’t assume openat
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
3cccf0a910 Don’t assume openat
</pre>
</div>
</content>
</entry>
<entry>
<title>Don’t assume openat</title>
<updated>2022-04-17T17:43:13+00:00</updated>
<author>
<name>Paul Eggert</name>
</author>
<published>2022-04-17T17:41:17+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=3cccf0a9107d585173e527550bbc45253624ca2e'/>
<id>3cccf0a9107d585173e527550bbc45253624ca2e</id>
<content type='text'>
Use openat only on platforms with O_PATH.
This ports to OS X 10.9 and earlier.
Problem reported by Keith David Bershatsky in:
https://lists.gnu.org/r/emacs-devel/2022-04/msg00805.html
* lib-src/emacsclient.c (local_sockname): Use open, not openat.
* src/sysdep.c (sys_openat): New static function,
which uses openat only if O_PATH is defined.
(emacs_openat): Use it instead of openat.
(emacs_openat_noquit): Remove.
(emacs_open_noquit): Reimplement as per the old emacs_openat_noquit,
but use plain 'open'.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use openat only on platforms with O_PATH.
This ports to OS X 10.9 and earlier.
Problem reported by Keith David Bershatsky in:
https://lists.gnu.org/r/emacs-devel/2022-04/msg00805.html
* lib-src/emacsclient.c (local_sockname): Use open, not openat.
* src/sysdep.c (sys_openat): New static function,
which uses openat only if O_PATH is defined.
(emacs_openat): Use it instead of openat.
(emacs_openat_noquit): Remove.
(emacs_open_noquit): Reimplement as per the old emacs_openat_noquit,
but use plain 'open'.
</pre>
</div>
</content>
</entry>
<entry>
<title>ebrowse dumping need not return int</title>
<updated>2022-04-09T00:33:15+00:00</updated>
<author>
<name>Paul Eggert</name>
</author>
<published>2022-04-08T23:41:26+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=d9bffa1f3b121085fd8f954eb9446a4a5241c062'/>
<id>d9bffa1f3b121085fd8f954eb9446a4a5241c062</id>
<content type='text'>
* lib-src/ebrowse.c (dump_members, dump_tree): Return void, not
int, since callers never actually use returned value.  All uses
changed.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lib-src/ebrowse.c (dump_members, dump_tree): Return void, not
int, since callers never actually use returned value.  All uses
changed.
</pre>
</div>
</content>
</entry>
<entry>
<title>Do not include &lt;attribute.h&gt; from &lt;config.h&gt;</title>
<updated>2022-03-09T02:51:17+00:00</updated>
<author>
<name>Paul Eggert</name>
</author>
<published>2022-03-09T02:46:47+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=ec35e2621a945797cc4978ebf2e0fe0b0f436705'/>
<id>ec35e2621a945797cc4978ebf2e0fe0b0f436705</id>
<content type='text'>
This is because mod-test.c shouldn’t use source code from lib,
but it does need to include &lt;config.h&gt;.
* lib-src/ebrowse.c, lib-src/emacsclient.c, lib-src/etags.c:
* lib-src/make-docfile.c, lib-src/movemail.c:
* lib-src/seccomp-filter.c, src/dynlib.h, src/lisp.h:
* src/syssignal.h, src/sysstdio.h, src/systhread.h, src/tparam.h:
Include &lt;attribute.h&gt;.
* src/conf_post.h: Do not include &lt;attribute.h&gt;.
All uses of attribute.h macros replaced with their _GL_ equivalents.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is because mod-test.c shouldn’t use source code from lib,
but it does need to include &lt;config.h&gt;.
* lib-src/ebrowse.c, lib-src/emacsclient.c, lib-src/etags.c:
* lib-src/make-docfile.c, lib-src/movemail.c:
* lib-src/seccomp-filter.c, src/dynlib.h, src/lisp.h:
* src/syssignal.h, src/sysstdio.h, src/systhread.h, src/tparam.h:
Include &lt;attribute.h&gt;.
* src/conf_post.h: Do not include &lt;attribute.h&gt;.
All uses of attribute.h macros replaced with their _GL_ equivalents.
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge from origin/emacs-28</title>
<updated>2022-03-06T05:32:23+00:00</updated>
<author>
<name>Stefan Kangas</name>
</author>
<published>2022-03-06T05:32:23+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=200627c255c4bf3f050f7f75fb3e4e100fe97bfa'/>
<id>200627c255c4bf3f050f7f75fb3e4e100fe97bfa</id>
<content type='text'>
0090318c61 * lib-src/seccomp-filter.c (main): Use faccessat2 only if ...
3bb01a499b Fix regression in derived-mode-init-mode-variables
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
0090318c61 * lib-src/seccomp-filter.c (main): Use faccessat2 only if ...
3bb01a499b Fix regression in derived-mode-init-mode-variables
</pre>
</div>
</content>
</entry>
<entry>
<title>* lib-src/seccomp-filter.c (main): Use faccessat2 only if defined.</title>
<updated>2022-03-05T13:41:22+00:00</updated>
<author>
<name>Andreas Schwab</name>
</author>
<published>2022-03-05T12:44:08+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=0090318c6113828688e84fc50a13a8d9c5f71c55'/>
<id>0090318c6113828688e84fc50a13a8d9c5f71c55</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge from origin/emacs-28</title>
<updated>2022-01-23T05:30:31+00:00</updated>
<author>
<name>Stefan Kangas</name>
</author>
<published>2022-01-23T05:30:31+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=1319d108dae70a8349110acd0f88d22436a9a70c'/>
<id>1319d108dae70a8349110acd0f88d22436a9a70c</id>
<content type='text'>
6d3608be88 Seccomp: improve support for newer versions of glibc (Bug#...
e58ecd01d5 EUDC: Fix a quoting bug in the BBDB backend
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
6d3608be88 Seccomp: improve support for newer versions of glibc (Bug#...
e58ecd01d5 EUDC: Fix a quoting bug in the BBDB backend
</pre>
</div>
</content>
</entry>
<entry>
<title>Seccomp: improve support for newer versions of glibc (Bug#51073)</title>
<updated>2022-01-22T16:18:50+00:00</updated>
<author>
<name>Philipp Stephani</name>
</author>
<published>2022-01-22T16:11:37+00:00</published>
<link rel='alternate' type='text/html' href='https://jason.zzq.org/git/emacs/commit/?id=6d3608be88e1b30d2d10ee81f14dd485275c20ff'/>
<id>6d3608be88e1b30d2d10ee81f14dd485275c20ff</id>
<content type='text'>
* lib-src/seccomp-filter.c (main): Allow 'pread64' and 'faccessat2'
system calls.  Newer versions of glibc use these system call (starting
with commits 95c1056962a3f2297c94ce47f0eaf0c5b6563231 and
3d3ab573a5f3071992cbc4f57d50d1d29d55bde2, respectively).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* lib-src/seccomp-filter.c (main): Allow 'pread64' and 'faccessat2'
system calls.  Newer versions of glibc use these system call (starting
with commits 95c1056962a3f2297c94ce47f0eaf0c5b6563231 and
3d3ab573a5f3071992cbc4f57d50d1d29d55bde2, respectively).
</pre>
</div>
</content>
</entry>
</feed>
