<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/lib/libc/stdio/vfscanf.c, branch releng/14.2</title>
<subtitle>FreeBSD source tree</subtitle>
<id>https://cgit-dev.freebsd.org/src/atom?h=releng%2F14.2</id>
<link rel='self' href='https://cgit-dev.freebsd.org/src/atom?h=releng%2F14.2'/>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/'/>
<updated>2023-11-27T04:20:09Z</updated>
<entry>
<title>libc: Purge unneeded cdefs.h</title>
<updated>2023-11-27T04:20:09Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2023-11-01T22:43:37Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=4025b5b527c870cf095ac9531764f4e4d3feaec2'/>
<id>urn:sha1:4025b5b527c870cf095ac9531764f4e4d3feaec2</id>
<content type='text'>
These sys/cdefs.h are not needed. Purge them. They are mostly left-over
from the $FreeBSD$ removal. A few in libc are still required for macros
that cdefs.h defines. Keep those.

Sponsored by:		Netflix
Differential Revision:	https://reviews.freebsd.org/D42385

(cherry picked from commit 559a218c9b257775fb249b67945fe4a05b7a6b9f)
</content>
</entry>
<entry>
<title>libc: Implement N2680.</title>
<updated>2023-09-07T20:28:31Z</updated>
<author>
<name>Dag-Erling Smørgrav</name>
<email>des@FreeBSD.org</email>
</author>
<published>2023-09-07T06:14:44Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=3c96ab9f1d2855e1a2a1660648ecef597678eaa3'/>
<id>urn:sha1:3c96ab9f1d2855e1a2a1660648ecef597678eaa3</id>
<content type='text'>
This adds specific width length modifiers in the form of wN and wfN (where N is 8, 16, 32, or 64) which allow printing intN_t and int_fastN_t without resorting to casts or PRI macros.

Reviewed by:	imp, emaste
Differential Revision:	https://reviews.freebsd.org/D41725

(cherry picked from commit bce0bef3c6abab92c7ac8cc23b7cc632a382721e)

libc: Add test cases for N2680.

This adds test cases for %wN and %wfN to the printf(3) and scanf(3) tests.

While here, fix a few nits in the N2630 test cases.

Reviewed by:	imp
Differential Revision:	https://reviews.freebsd.org/D41743

(cherry picked from commit 12b1c1e3fb446021a881d9815465137843fca50b)

Approved by:	re (gjb)
</content>
</entry>
<entry>
<title>libc: Implement N2630.</title>
<updated>2023-09-07T20:28:30Z</updated>
<author>
<name>Dag-Erling Smørgrav</name>
<email>des@FreeBSD.org</email>
</author>
<published>2023-08-28T15:32:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=bae932999e0fa9e9a08d84ca992332c57e5b42be'/>
<id>urn:sha1:bae932999e0fa9e9a08d84ca992332c57e5b42be</id>
<content type='text'>
This adds formatted input/output of binary integer numbers to the printf(), scanf(), and strtol() families, including their wide-character counterparts.

Reviewed by:	imp, emaste
Differential Revision:	https://reviews.freebsd.org/D41511

(cherry picked from commit d9dc1603d6e48cca84cad3ebe859129131b8387c)

libc: Add unit tests for N2630 and possible collateral damage.

Reviewed by:	imp, emaste
Differential Revision:	https://reviews.freebsd.org/D41512

(cherry picked from commit b9385720f34b536ef2568a642e8b1fad0450056f)

libc: Document support for binary integers.

Reviewed by:	debdrup, emaste
Differential Revision:	https://reviews.freebsd.org/D41522

(cherry picked from commit 76edfabbecdec686a570b8e009d5ea4112f943e0)

libc: Fix fixed-width case in the new integer parser.

Fixes:		d9dc1603d6e4
Differential Revision:	https://reviews.freebsd.org/D41622

(cherry picked from commit aca3bd1602577591e5cd237c4bb0bb71b3be0c75)

libc: Add a wide version of snprintf_test.

Reviewed by:	imp, emaste
Differential Revision:	https://reviews.freebsd.org/D41726

(cherry picked from commit 4ec9ee9912765ac4ca57353999caa92a23283d8e)

libc: Suppress format checks on printf() / scanf() tests.

Reviewed by:	jrtc27, markj, emaste
Differential Revision:	https://reviews.freebsd.org/D41727

(cherry picked from commit 294bd2827e61a78041f6613f4b82235fcc454157)

Approved by:	re (gjb)
</content>
</entry>
<entry>
<title>Remove $FreeBSD$: one-line .c pattern</title>
<updated>2023-08-16T17:54:42Z</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2023-08-16T17:54:42Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1d386b48a555f61cb7325543adbbb5c3f3407a66'/>
<id>urn:sha1:1d386b48a555f61cb7325543adbbb5c3f3407a66</id>
<content type='text'>
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
</content>
</entry>
<entry>
<title>libc: drop "All rights reserved" from Foundation copyrights</title>
<updated>2022-08-04T20:57:50Z</updated>
<author>
<name>Ed Maste</name>
<email>emaste@FreeBSD.org</email>
</author>
<published>2022-08-04T20:52:23Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=5b5fa75acff11d871d0c90045f8c1a58fed85365'/>
<id>urn:sha1:5b5fa75acff11d871d0c90045f8c1a58fed85365</id>
<content type='text'>
This has already been done for most files that have the Foundation as
the only listed copyright holder.  Do it now for files that list
multiple copyright holders, but have the Foundation copyright in its own
section.

Sponsored by:	The FreeBSD Foundation
</content>
</entry>
<entry>
<title>General further adoption of SPDX licensing ID tags.</title>
<updated>2017-11-20T19:49:47Z</updated>
<author>
<name>Pedro F. Giffuni</name>
<email>pfg@FreeBSD.org</email>
</author>
<published>2017-11-20T19:49:47Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=8a16b7a18f5d0b031f09832fd7752fba717e2a97'/>
<id>urn:sha1:8a16b7a18f5d0b031f09832fd7752fba717e2a97</id>
<content type='text'>
Mainly focus on files that use BSD 3-Clause license.

The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.

Special thanks to Wind River for providing access to "The Duke of
Highlander" tool: an older (2014) run over FreeBSD tree was useful as a
starting point.
</content>
</entry>
<entry>
<title>Make stdio deferred cancel-safe.</title>
<updated>2017-06-29T14:44:17Z</updated>
<author>
<name>Konstantin Belousov</name>
<email>kib@FreeBSD.org</email>
</author>
<published>2017-06-29T14:44:17Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=fda0a14f4744c2851766f395775c7531e7c4f7dd'/>
<id>urn:sha1:fda0a14f4744c2851766f395775c7531e7c4f7dd</id>
<content type='text'>
If used with fopen(3)/fdopen(3)-ed FILEs, stdio accurately uses
non-cancellable internal versions of the functions, i.e. it seems to
be fine with regard to cancellation.  But if the funopen(3) and
f{r,w}open(3) functions were used to open the FILE, and corresponding
user functions create cancellation points (they typically have no
other choice), then stdio code at least leaks FILE' lock.

The change installs cleanup handler which unlocks FILE.  Some minimal
restructuring of the code was required to make it use common return
place to satisfy hand-rolled pthread_cleanup_pop() requirements.

Noted by:	eugen
Reviewed by:	eugen, vangyzen
Tested by:	pho
Sponsored by:	The FreeBSD Foundation
MFC after:	2 weeks
Differential revision:	https://reviews.freebsd.org/D11246
</content>
</entry>
<entry>
<title>1) Eliminate possibility to call __*collate_range_cmp() with inclomplete</title>
<updated>2016-07-14T09:07:25Z</updated>
<author>
<name>Andrey A. Chernov</name>
<email>ache@FreeBSD.org</email>
</author>
<published>2016-07-14T09:07:25Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=12eae8c8f346cb459a388259ca98faebdac47038'/>
<id>urn:sha1:12eae8c8f346cb459a388259ca98faebdac47038</id>
<content type='text'>
locale (which cause core dump) by removing whole 'table' argument
by which it passed.

2) Restore __collate_range_cmp() in __sccl().

3) Collating [a-z] range in regcomp() only for single bytes locales
(we can't do it now for other ones). In previous state only first 256
wchars are considered and all others are just silently dropped from the
range.
</content>
</entry>
<entry>
<title>Back out non-collating [a-z] ranges.</title>
<updated>2016-07-14T08:18:12Z</updated>
<author>
<name>Andrey A. Chernov</name>
<email>ache@FreeBSD.org</email>
</author>
<published>2016-07-14T08:18:12Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=1daad8f5ad767dfe7896b8d1959a329785c9a76b'/>
<id>urn:sha1:1daad8f5ad767dfe7896b8d1959a329785c9a76b</id>
<content type='text'>
Instead of changing whole course to another POSIX-permitted way
for consistency and uniformity I decide to completely ignore missing
regex fucntionality and concentrace on fixing bugs in what we have now,
too many small obstacles instead, counting ports.
</content>
</entry>
<entry>
<title>Remove broken support for collation in [a-z] type ranges.</title>
<updated>2016-07-10T03:49:38Z</updated>
<author>
<name>Andrey A. Chernov</name>
<email>ache@FreeBSD.org</email>
</author>
<published>2016-07-10T03:49:38Z</published>
<link rel='alternate' type='text/html' href='https://cgit-dev.freebsd.org/src/commit/?id=5a5807dd4ca34467ac5fb458bc19f12bf62075a5'/>
<id>urn:sha1:5a5807dd4ca34467ac5fb458bc19f12bf62075a5</id>
<content type='text'>
Only first 256 wide chars are considered currently, all other are just
dropped from the range. Proper implementation require reverse tables
database lookup, since objects are really big as max UTF-8 (1114112
code points), so just the same scanning as it was for 256 chars will
slow things down.

POSIX does not require collation for [a-z] type ranges and does not
prohibit it for non-POSIX locales. POSIX require collation for ranges
only for POSIX (or C) locale which is equal to ASCII and binary for
other chars, so we already have it.

No other *BSD implements collation for [a-z] type ranges.

Restore ABI compatibility with unused now __collate_range_cmp() which
is visible from outside (will be removed later).
</content>
</entry>
</feed>
