Mercurial > gnulib
view COPYING @ 40214:452ab00796c7
Fix undefined behaviour.
* lib/bitrotate.h (rotl16, rotr16, rotl8, rotr8): Case x to
'unsigned int', to avoid shift operations on 'int'.
* lib/xmemdup0.c (xmemdup0): Don't invoke memcpy with a zero size.
* tests/test-count-leading-zeros.c (main): Use a random number that has
as many bits as TYPE, not only 2*15 or 2*31 bits.
* tests/test-count-trailing-zeros.c (main): Likewise.
* tests/test-count-one-bits.c (main): Likewise.
* tests/test-memmem.c: Don't include "null-ptr.h".
(main): Use zerosize_ptr() instead of null_ptr().
* modules/memmem-tests (Files): Remove tests/null-ptr.h.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sat, 09 Mar 2019 20:32:25 +0100 |
parents | aa5db38616a7 |
children |
line wrap: on
line source
$Id: COPYING,v 1.3 2006-10-26 16:20:28 eggert Exp $ The files in here are mostly copyright (C) Free Software Foundation, and are under assorted licenses. Mostly, but not entirely, GPL. Many modules are provided dual-license, either GPL or LGPL at your option. The headers of files in the lib directory (e.g., lib/error.c) state GPL for convenience, since the bulk of current gnulib users are GPL'd programs. But the files in the modules directory (e.g., modules/error) state the true license of each file, and when you use 'gnulib-tool --lgpl --import <modules>', gnulib-tool either rewrites the files to have an LGPL header as part of copying them from gnulib to your project directory, or fails because the modules you requested were not licensed under LGPL. Some of the source files in lib/ have different licenses. Also, the copy of maintain.texi in doc/ has a verbatim-copying license, and doc/standards.texi and make-stds.texi are GFDL. Most (but not all) m4/*.m4 files have nearly unlimited licenses.