Go to file
rillig 131c7001fe lint: fix wrong error message about type mismatch in compound literal
Now that the code contains explicit markers for starting and ending an
initialization, and having the guarantee that an assertion fails
whenever some code accesses the state of the "current initialization"
even though there is no ongoing initialization gives me much more
confidence in the correctness of the code.  The calls to
begin_initialization and end_initialization always appear in pairs,
enclosing the minimal amount of code necessary for initialization.

In a nutshell, global modifiable state is error-prone and hard to
understand.

A nice side effect is that the grammar no longer needs a special rule
for the outermost initializer since the functions for the debug logging
are now called explicitly.

The code that misuses the initialization state just because it needs to
temporarily store a sym_t somewhere is now clearly marked as such.  A
GCC statement expression can appear anywhere and is therefore
independent of the initialization.  Most probably the code can simply
refer to the local variable in the grammar rule itself, or this variable
needs to be encoded in the grammar %union.  For sure there is a better
way to handle this.

There is no longer a need that the function 'declare' initializes the
initialization state, it was just the wrong place to do this.
2021-03-23 18:40:50 +00:00
bin PR/56007: Greg A. Woods: ksh unable to execute ERR traps 2021-02-23 01:31:30 +00:00
common arm bswap32: fix fatal typo in thumb code (PR 55854) 2020-12-11 09:02:33 +00:00
compat Use the compat machinery to build "native" IPF binaries as ipfilter 2021-01-05 11:07:59 +00:00
crypto remove __UNCONST, initialize 2021-03-05 17:53:51 +00:00
dist/pf Externalize variables owned logically by pf_ruleset.c 2020-04-22 23:40:40 +00:00
distrib bump libunbound 2021-03-15 20:17:04 +00:00
doc new nsd/unbound 2021-03-15 20:18:21 +00:00
etc Need to explicitly load value of zfs variable as zfs=YES may be set in 2021-03-09 12:42:46 +00:00
external bind: fix workaround for bug in lint 2021-03-22 15:12:24 +00:00
extsrc
games cgram: don't beep if the window is resized 2021-02-26 15:18:40 +00:00
include - Replace REG_ENOSYS (unused) with REG_ILLSEQ. 2021-02-23 17:14:42 +00:00
lib note that ttyaction.[35] first appeared in netbsd 1.3. 2021-03-21 23:29:36 +00:00
libexec Don't or the got object in, just assign it. Fixes cc -mabi=64 hello.c -lcrypto 2021-03-06 20:11:08 +00:00
regress citrus SUBDIR is gone 2020-06-27 11:06:43 +00:00
rescue smb is no more. 2020-04-04 17:57:16 +00:00
sbin Fix typo: s/--r/-r/ 2021-03-14 02:56:51 +00:00
share Work in progress for MIPS modules. Only tested on mipseb64, not yet 2021-03-23 13:22:40 +00:00
sys Work in progress for MIPS modules. Only tested on mipseb64, not yet 2021-03-23 13:22:40 +00:00
tests lint: fix wrong error message about type mismatch in compound literal 2021-03-23 18:40:50 +00:00
tools Add reallocarray; this is used by the new regex code and we don't want to 2021-02-25 13:41:58 +00:00
usr.bin lint: fix wrong error message about type mismatch in compound literal 2021-03-23 18:40:50 +00:00
usr.sbin print function names as %s: not <%s> everywhere for consistency. 2021-03-23 18:16:53 +00:00
build.sh Modify the generated make wrapper to avoid complaints about 2021-01-28 10:36:27 +00:00
BUILDING Reintroduce the support of MKCATPAGES 2020-11-10 21:47:40 +00:00
Makefile G/c spurious whitespace. 2020-10-29 20:26:24 +00:00
Makefile.inc
README.md Improve URL consistency 2021-03-17 15:26:20 +00:00
UPDATING UPDATING: lint1/ops.c may require OBJDIR to be cleaned 2021-01-09 20:51:08 +00:00

NetBSD

NetBSD is a free, fast, secure, and highly portable Unix-like Open Source operating system. It is available for a wide range of platforms, from large-scale servers and powerful desktop systems to handheld and embedded devices.

Building

You can cross-build NetBSD from most UNIX-like operating systems. To build for amd64 (x86_64), in the src directory:

./build.sh -U -u -j4 -m amd64 -O ~/obj release

Additional build information available in the BUILDING file.

Binaries

Testing

On a running NetBSD system:

cd /usr/tests; atf-run | atf-report

Troubleshooting

Latest sources

To fetch the main CVS repository:

cvs -d anoncvs@anoncvs.NetBSD.org:/cvsroot checkout -P src

To work in the Git mirror, which is updated every few hours from CVS:

git clone https://github.com/NetBSD/src.git