=over 4
+=item A thread exited while %d other threads were still running
+
+(W) When using threaded Perl, a thread (not necessarily the main
+thread) exited while there were still other threads running.
+Usually it's a good idea to first collect the return values of the
+created threads by joining them, and only then exit from then main
+thread. See L<threads>.
+
=item accept() on closed socket %s
(W closed) You tried to do an accept on a closed socket. Did you forget
functioning as a class, but that package doesn't define that particular
method, nor does any of its base classes. See L<perlobj>.
+=item Can't locate PerlIO%s
+
+(F) You tried to use in open() a PerlIO layer that does not exist,
+e.g. open(FH, ">:nosuchlayer", "somefile").
+
=item (perhaps you forgot to load "%s"?)
(F) This is an educated guess made in conjunction with the message
If you actually want to pack Unicode codepoints, use the C<"U"> format
instead.
-=item Cleanup skipped %d active threads
-
-(W) When using threaded Perl, the main thread exited while there were
-still other threads running. This is not a good sign: you should
-either explicitly join the threads, or somehow be certain that all
-the non-main threads have finished. See L<threads>.
-
=item close() on unopened filehandle %s
(W unopened) You tried to close a filehandle that was never opened.
that it is simpler or backtracks less. (See L<perlfaq2> for information
on I<Mastering Regular Expressions>.)
+=item cond_broadcast() called on unlocked variable
+
+(W threads) Within a thread-enabled program, you tried to call
+cond_broadcast() on a variable which wasn't locked. The cond_broadcast()
+function is used to wake up another thread that is waiting in a
+cond_wait(). To ensure that the signal isn't sent before the other thread
+has a chance to enter the wait, it is usual for the signaling thread to
+first wait for a lock on variable. This lock attempt will only succeed
+after the other thread has entered cond_wait() and thus relinquished the
+lock.
+
+
+=item cond_signal() called on unlocked variable
+
+(W threads) Within a thread-enabled program, you tried to call
+cond_signal() on a variable which wasn't locked. The cond_signal()
+function is used to wake up another thread that is waiting in a
+cond_wait(). To ensure that the signal isn't sent before the other thread
+has a chance to enter the wait, it is usual for the signaling thread to
+first wait for a lock on variable. This lock attempt will only succeed
+after the other thread has entered cond_wait() and thus relinquished the
+lock.
+
=item connect() on closed socket %s
(W closed) You tried to do a connect on a closed socket. Did you forget
=item Constant subroutine %s redefined
-(S|W redefine) You redefined a subroutine which had previously been
+(S) You redefined a subroutine which had previously been
eligible for inlining. See L<perlsub/"Constant Functions"> for
commentary and workarounds.
(F) The second argument of 3-argument open() is not among the list
of valid modes: C<< < >>, C<< > >>, C<<< >> >>>, C<< +< >>,
-C<< +> >>, C<<< +>> >>>, C<-|>, C<|->.
+C<< +> >>, C<<< +>> >>>, C<-|>, C<|->, C<< <& >>, C<< >& >>.
=item Unknown process %x sent message to prime_env_iter: %s