@node Changes in 2.01, , , What Changed
@section Changes in 2.01

Here is a list of changes from DJGPP V2.00 to V2.01

@code{dxeload()} now checks for @code{malloc} returning NULL.
@findex dxeload

@code{gxx} by default also links @code{libstdc++.a}.
@pindex gxx

@file{info/dir.txi} now has full file names for binutils, bison, and
find.

@file{include/dir.h} now packs @code{struct ffblk} in such a way that
g++ 2.7.2 works correctly.  Note that gcc 2.7.3 does not require this
change.
@findex findfirst
@findex dir.h

@code{SIGINT} is now in the ANSI section of @file{signal.h}
@vindex SIGINT

@code{glob()} returns GLOB_NOSPACE when @code{malloc} fails.
@findex glob

@file{echo} now accepts @code{-s} to put one argument per line,
instead of all on one line.
@pindex echo

@code{_dos_ds} now has a limit of 4Gb instead of 16Mb.
@vindex _dos_ds

@code{_is_exec} (and thus @code{access}) check suffixes independent of
case, so @file{.com} and @file{.bat} files are executable.
@findex _is_exec
@findex access

Documentation for @code{getopt} has been added.
@findex getopt

@code{doscan} returns -1 when it should (and other doscan fixes).
@findex doscan

@code{sigaction} works correctly.
@findex sigaction

@code{stat} works correctly when _STAT_EXEC_MAGIC is set but
_STAT_EXE_EXT is not.
@findex stat

The example in the @code{movedata} documention correctly lists
@code{_my_ds()} now.

@file{fsbd} and @file{edebug} shouldn't crash on long C++ symbols.
@pindex fsdb
@pindex edebug

@code{stat} returns the correct number of links to a directory.

@file{fsdb} doesn't crash with multiple directories of source files.

Command line arguments are not wildcard-expanded if they were passed
through @code{spawn*()} or @code{exec*()}
@cindex wildcards

@code{stdprn} and @code{stdaux} work correctly now.
@vindex stdprn
@vindex stdaux

Documentation for @code{dosmemput} fixed.
@findex dosmemput

@code{popen} and @code{system} no longer leak file descriptors.
@findex popen
@findex system

@code{bdosptr} macro in @file{dos.h} is now protected better.
@findex bdosptr
@findex dos.h

@code{system} now flushes stdout and stderr (output used to get mixed up).
@findex system

@code{inp}, @code{inpw}, @code{outp}, @code{outpw} added to @file{pc.h}.
@findex inp
@findex inpw
@findex outp
@findex outpw
@findex pc.h

@code{_go32_dpmi_free_real_mode_callback} frees the right stack.
@findex _go32_dpmi_free_real_mode_callback

Anything in @file{libm.a} that used @code{scalbn} won't leak stack (like @code{ldexp}).
@findex libm.a
@findex ldexp
@findex scalbn

Most @file{stdio.h} routines rewritten for better text file handling.

@code{exit} won't recurse if a destructor calls @code{exit}.
@findex exit

@code{fcntl} supports @file{sys/fsext.h}.  @code{open} passes all
flags to extensions.
@findex fcntl
@findex open

@code{system} supports redirection and pipes directly.
@findex system

@code{stat} bugfixes.
@findex stat

@code{mntent} supports JAM compressed drives; CDROM bug fixed.
@findex mntent

Many fixes to LFN support.
@cindex lfn

@code{printf} supports long longs; new support functions in libc also.
@findex printf

@file{go32-v2} works in more cases.
@pindex go32-v2

@file{djasm} supports more opcodes and modes.
@pindex djasm

@file{stubify} doesn't crash as often; runs faster.
@pindex stubify

@code{ScreenGetChar} added to @file{pc.h}
@findex ScreenGetChar

@code{va_start} works if the last argument is not int-sized.
@findex va_start

New function @code{_fargetsel()}.
@findex _fargetsel

@file{echo.exe} handles invalid options correctly now.
@pindex echo

Some @file{fsdb} bugs fixed
@pindex fsdb

@code{glob} handles @code{...} better now.
@findex glob

@code{ioctl} and @file{sys/ioctl.h} added (no unix functionality yet)
@findex ioctl

@file{termios.h} functionality added.

@code{write} no longer mallocs a buffer; it writes to the transfer
buffer directly.
@findex write

@code{setrusage} and @code{getrusage} added.
@findex setrusage
@findex getrusage

@code{readdir} will return "." and ".." even for root directories.
@findex readdir
