Re: how to build with -DPERL_MEM_LOG ?
[p5sagit/p5-mst-13.2.git] / pod / perldiag.pod
index 561d243..44b83ed 100644 (file)
@@ -1076,19 +1076,13 @@ redefined subroutine while the old routine is running.  Go figure.
 (F) You tried to unshift an "unreal" array that can't be unshifted, such
 as the main Perl stack.
 
-=item Can't upgrade that kind of scalar
+=item Can't upgrade %s (%d) to %d
 
 (P) The internal sv_upgrade routine adds "members" to an SV, making it
 into a more specialized kind of SV.  The top several SV types are so
 specialized, however, that they cannot be interconverted.  This message
 indicates that such a conversion was attempted.
 
-=item Can't upgrade to undef
-
-(P) The undefined SV is the bottom of the totem pole, in the scheme of
-upgradability.  Upgrading to undef indicates an error in the code
-calling sv_upgrade.
-
 =item Can't use anonymous symbol table for method lookup
 
 (F) The internal routine that does method lookup was handed a symbol
@@ -1512,6 +1506,10 @@ subroutine or package before the current location.  You can use an empty
 (W misc) You used the obsolescent C<dump()> built-in function, without fully
 qualifying it as C<CORE::dump()>.  Maybe it's a typo.  See L<perlfunc/dump>.
 
+=item dump is not supported
+
+(F) Your machine doesn't support dump/undump.
+
 =item Duplicate free() ignored
 
 (S malloc) An internal routine called free() on something that had
@@ -1978,10 +1976,20 @@ transparently promotes all numbers to a floating point representation
 internally--subject to loss of precision errors in subsequent
 operations.
 
+=item Integer overflow in division
+
+(F) In the scope of the C<use integer;> pragma, division would have overflowed.
+This will happen if you attempt to divide the largest negative integer by -1,
+since the result cannot be represented as a signed integer on a two's complement
+system.  This division is trapped as a Perl-level exception because on some
+architectures the integer divide operation will trigger a CPU exception
+causing program exit, rather than merely returning a mathematically wrong
+answer.
+
 =item Integer overflow in format string for %s
 
-(F) The indexes and widths specified in the format string of printf()
-or sprintf() are too large.  The numbers must not overflow the size of
+(F) The indexes and widths specified in the format string of C<printf()>
+or C<sprintf()> are too large.  The numbers must not overflow the size of
 integers for your architecture.
 
 =item Integer overflow in version
@@ -4711,6 +4719,11 @@ are automatically rebound to the current values of such variables.
 its equivalent C<BEGIN> block found an internal inconsistency with
 the version number.
 
+=item Version string '%s' contains invalid data; ignoring: '%s'
+
+(W misc) The version string contains invalid characters at the end, which
+are being ignored.
+
 =item v-string in use/require is non-portable
 
 (W portable) The use of v-strings is non-portable to older, pre-5.6, Perls.