summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--malloc.c2
-rw-r--r--pod/perldiag.pod14
2 files changed, 9 insertions, 7 deletions
diff --git a/malloc.c b/malloc.c
index 91815a2c44..0409947ff5 100644
--- a/malloc.c
+++ b/malloc.c
@@ -457,7 +457,7 @@ emergency_sbrk(size)
if (size >= BIG_SIZE) {
/* Give the possibility to recover: */
MUTEX_UNLOCK(&malloc_mutex);
- croak("Out of memory during request for %i bytes", size);
+ croak("Out of memory during \"large\" request for %i bytes", size);
}
if (!emergency_buffer) {
diff --git a/pod/perldiag.pod b/pod/perldiag.pod
index 8dd2f823a0..7d39630240 100644
--- a/pod/perldiag.pod
+++ b/pod/perldiag.pod
@@ -188,10 +188,6 @@ the return value of your socket() call? See L<perlfunc/accept>.
(X) You can't allocate more than 64K on an MS-DOS machine.
-=item Allocation too large
-
-(F) You can't allocate more than 2^31+"small amount" bytes.
-
=item Applying %s to %s will act on scalar(%s)
(W) The pattern match (//), substitution (s///), and transliteration (tr///)
@@ -1754,7 +1750,7 @@ if you said "*foo * 'foo'".
(F) The yacc parser wanted to grow its stack so it could continue parsing,
but realloc() wouldn't give it more memory, virtual or otherwise.
-=item Out of memory!
+=item Out of memory during request for %s
(X|F) The malloc() function returned 0, indicating there was insufficient
remaining memory (or virtual memory) to satisfy the request.
@@ -1765,13 +1761,19 @@ However, if compiled for this, Perl may use the contents of C<$^M> as
an emergency pool after die()ing with this message. In this case the
error is trappable I<once>.
-=item Out of memory during request for %s
+=item Out of memory during "large" request for %s
(F) The malloc() function returned 0, indicating there was insufficient
remaining memory (or virtual memory) to satisfy the request. However,
the request was judged large enough (compile-time default is 64K), so
a possibility to shut down by trapping this error is granted.
+=item Out of memory during ridiculously large request
+
+(F) You can't allocate more than 2^31+"small amount" bytes. This error
+is most likely to be caused by a typo in the Perl program. e.g., C<$arr[time]>
+instead of C<$arr[$time]>.
+
=item page overflow
(W) A single call to write() produced more lines than can fit on a page.