]> git.vpit.fr Git - perl/modules/Lexical-Types.git/blobdiff - lib/Lexical/Types.pm
Introduce LT_FORKSAFE
[perl/modules/Lexical-Types.git] / lib / Lexical / Types.pm
index a8be1c4bb72b1582ce61f005879896803a5493fb..ab54c250121ed2beb7570ade4b5580de5a4f3af7 100644 (file)
@@ -5,8 +5,6 @@ use 5.008001;
 use strict;
 use warnings;
 
-use Carp qw/croak/;
-
 =head1 NAME
 
 Lexical::Types - Extend the semantics of typed lexicals.
@@ -152,7 +150,8 @@ sub import {
    $as .= '::' if $as !~ /::$/;
    $hint = _tag(sub { $as . $_[0] });
   } else {
-   croak "Invalid $r reference for 'as'";
+   require Carp;
+   Carp::croak("Invalid $r reference for 'as'");
   }
  } else {
   $hint = _tag(sub { @_ });
@@ -251,6 +250,11 @@ If you prefer to use constants rather than creating empty packages, you can repl
 
 True iff the module could have been built with thread-safety features enabled.
 
+=head2 C<LT_FORKSAFE>
+
+True iff this module could have been built with fork-safety features enabled.
+This will always be true except on Windows where it's false for perl 5.10.0 and below .
+
 =head1 CAVEATS
 
 The restrictions on the type (being either a defined package name or a constant) apply even if you use the C<'as'> option to redirect to another package, and are unlikely to find a workaround as this happens deep inside the lexer - far from the reach of an extension.