This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Add a usage note about the "l" modifier.
authorShlomi Fish <shlomif@shlomifish.org>
Thu, 29 Oct 2020 13:40:07 +0000 (15:40 +0200)
committerTony Cook <tony@develop-help.com>
Mon, 23 Nov 2020 03:19:25 +0000 (14:19 +1100)
pod/perlfunc.pod

index d509eee..e864147 100644 (file)
@@ -8223,6 +8223,11 @@ as supported by the compiler used to build Perl:
    z           interpret integer as C types "size_t" or
                "ssize_t" on Perl 5.14 or later
 
+Note that, in general, using the C<l> modifier (for example, when writing
+C<"%ld"> or C<"%lu"> instead of C<"%d"> and C<"%u">) is unnecessary
+when used from Perl code.  Moreover, it may be harmful, for example on
+Windows 64-bit where a long is 32-bits.
+
 As of 5.14, none of these raises an exception if they are not supported on
 your platform.  However, if warnings are enabled, a warning of the
 L<C<printf>|warnings> warning class is issued on an unsupported