perl56delta.html

来自「perl教程」· HTML 代码 · 共 975 行 · 第 1/5 页

HTML
975
字号
<?xml version="1.0" ?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<!-- saved from url=(0017)http://localhost/ -->
<script language="JavaScript" src="../../displayToc.js"></script>
<script language="JavaScript" src="../../tocParas.js"></script>
<script language="JavaScript" src="../../tocTab.js"></script>
<link rel="stylesheet" type="text/css" href="../../scineplex.css">
<title>perl56delta - what's new for perl v5.6.0</title>
<link rel="stylesheet" href="../../Active.css" type="text/css" />
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link rev="made" href="mailto:" />
</head>

<body>

<script>writelinks('__top__',2);</script>
<h1><a>perl56delta - what's new for perl v5.6.0</a></h1>
<p><a name="__index__"></a></p>

<!-- INDEX BEGIN -->

<ul>

	<li><a href="#name">NAME</a></li>
	<li><a href="#description">DESCRIPTION</a></li>
	<li><a href="#core_enhancements">Core Enhancements</a></li>
	<ul>

		<li><a href="#interpreter_cloning__threads__and_concurrency">Interpreter cloning, threads, and concurrency</a></li>
		<li><a href="#lexically_scoped_warning_categories">Lexically scoped warning categories</a></li>
		<li><a href="#unicode_and_utf8_support">Unicode and UTF-8 support</a></li>
		<li><a href="#support_for_interpolating_named_characters">Support for interpolating named characters</a></li>
		<li><a href="#our_declarations">&quot;our&quot; declarations</a></li>
		<li><a href="#support_for_strings_represented_as_a_vector_of_ordinals">Support for strings represented as a vector of ordinals</a></li>
		<li><a href="#improved_perl_version_numbering_system">Improved Perl version numbering system</a></li>
		<li><a href="#new_syntax_for_declaring_subroutine_attributes">New syntax for declaring subroutine attributes</a></li>
		<li><a href="#file_and_directory_handles_can_be_autovivified">File and directory handles can be autovivified</a></li>
		<li><a href="#open___with_more_than_two_arguments"><a href="../../lib/Pod/perlfunc.html#item_open"><code>open()</code></a> with more than two arguments</a></li>
		<li><a href="#64bit_support">64-bit support</a></li>
		<li><a href="#large_file_support">Large file support</a></li>
		<li><a href="#long_doubles">Long doubles</a></li>
		<li><a href="#more_bits">&quot;more bits&quot;</a></li>
		<li><a href="#enhanced_support_for_sort___subroutines">Enhanced support for <a href="../../lib/Pod/perlfunc.html#item_sort"><code>sort()</code></a> subroutines</a></li>
		<li><a href="#sort__coderef__foo_allowed"><code>sort $coderef @foo</code> allowed</a></li>
		<li><a href="#file_globbing_implemented_internally">File globbing implemented internally</a></li>
		<li><a href="#support_for_check_blocks">Support for CHECK blocks</a></li>
		<li><a href="#posix_character_class_syntax_______supported">POSIX character class syntax [: :] supported</a></li>
		<li><a href="#better_pseudorandom_number_generator">Better pseudo-random number generator</a></li>
		<li><a href="#improved_qw___operator">Improved <a href="../../lib/Pod/perlfunc.html#item_qw_"><code>qw//</code></a> operator</a></li>
		<li><a href="#better_worstcase_behavior_of_hashes">Better worst-case behavior of hashes</a></li>
		<li><a href="#pack___format__z__supported"><a href="../../lib/Pod/perlfunc.html#item_pack"><code>pack()</code></a> format 'Z' supported</a></li>
		<li><a href="#pack___format_modifier_____supported"><a href="../../lib/Pod/perlfunc.html#item_pack"><code>pack()</code></a> format modifier '!' supported</a></li>
		<li><a href="#pack___and_unpack___support_counted_strings"><a href="../../lib/Pod/perlfunc.html#item_pack"><code>pack()</code></a> and <a href="../../lib/Pod/perlfunc.html#item_unpack"><code>unpack()</code></a> support counted strings</a></li>
		<li><a href="#comments_in_pack___templates">Comments in <a href="../../lib/Pod/perlfunc.html#item_pack"><code>pack()</code></a> templates</a></li>
		<li><a href="#weak_references">Weak references</a></li>
		<li><a href="#binary_numbers_supported">Binary numbers supported</a></li>
		<li><a href="#lvalue_subroutines">Lvalue subroutines</a></li>
		<li><a href="#some_arrows_may_be_omitted_in_calls_through_references">Some arrows may be omitted in calls through references</a></li>
		<li><a href="#boolean_assignment_operators_are_legal_lvalues">Boolean assignment operators are legal lvalues</a></li>
		<li><a href="#exists___is_supported_on_subroutine_names"><a href="../../lib/Pod/perlfunc.html#item_exists"><code>exists()</code></a> is supported on subroutine names</a></li>
		<li><a href="#exists___and_delete___are_supported_on_array_elements"><a href="../../lib/Pod/perlfunc.html#item_exists"><code>exists()</code></a> and <a href="../../lib/Pod/perlfunc.html#item_delete"><code>delete()</code></a> are supported on array elements</a></li>
		<li><a href="#pseudohashes_work_better">Pseudo-hashes work better</a></li>
		<li><a href="#automatic_flushing_of_output_buffers">Automatic flushing of output buffers</a></li>
		<li><a href="#better_diagnostics_on_meaningless_filehandle_operations">Better diagnostics on meaningless filehandle operations</a></li>
		<li><a href="#where_possible__buffered_data_discarded_from_duped_input_filehandle">Where possible, buffered data discarded from duped input filehandle</a></li>
		<li><a href="#eof___has_the_same_old_magic_as___"><a href="../../lib/Pod/perlfunc.html#item_eof"><code>eof()</code></a> has the same old magic as &lt;&gt;</a></li>
		<li><a href="#binmode___can_be_used_to_set__crlf_and__raw_modes"><a href="../../lib/Pod/perlfunc.html#item_binmode"><code>binmode()</code></a> can be used to set :crlf and :raw modes</a></li>
		<li><a href="#t_filetest_recognizes_utf8_encoded_files_as_text"><a href="../../lib/Pod/perlrun.html#item__2dt"><code>-T</code></a> filetest recognizes UTF-8 encoded files as &quot;text&quot;</a></li>
		<li><a href="#system____backticks_and_pipe_open_now_reflect_exec___failure">system(), backticks and pipe open now reflect <a href="../../lib/Pod/perlfunc.html#item_exec"><code>exec()</code></a> failure</a></li>
		<li><a href="#improved_diagnostics">Improved diagnostics</a></li>
		<li><a href="#diagnostics_follow_stderr">Diagnostics follow STDERR</a></li>
		<li><a href="#more_consistent_closeonexec_behavior">More consistent close-on-exec behavior</a></li>
		<li><a href="#syswrite___easeofuse"><a href="../../lib/Pod/perlfunc.html#item_syswrite"><code>syswrite()</code></a> ease-of-use</a></li>
		<li><a href="#better_syntax_checks_on_parenthesized_unary_operators">Better syntax checks on parenthesized unary operators</a></li>
		<li><a href="#bit_operators_support_full_native_integer_width">Bit operators support full native integer width</a></li>
		<li><a href="#improved_security_features">Improved security features</a></li>
		<li><a href="#more_functional_bareword_prototype____">More functional bareword prototype (*)</a></li>
		<li><a href="#require_and_do_may_be_overridden"><a href="../../lib/Pod/perlfunc.html#item_require"><code>require</code></a> and <a href="../../lib/Pod/perlfunc.html#item_do"><code>do</code></a> may be overridden</a></li>
		<li><a href="#__x_variables_may_now_have_names_longer_than_one_character">$^X variables may now have names longer than one character</a></li>
		<li><a href="#new_variable___c_reflects_c_switch">New variable $^C reflects <a href="../../lib/Pod/perlrun.html#item__2dc"><code>-c</code></a> switch</a></li>
		<li><a href="#new_variable___v_contains_perl_version_as_a_string">New variable $^V contains Perl version as a string</a></li>
		<li><a href="#optional_y2k_warnings">Optional Y2K warnings</a></li>
		<li><a href="#arrays_now_always_interpolate_into_doublequoted_strings">Arrays now always interpolate into double-quoted strings</a></li>
		<li><a href="#__and____provide_starting_ending_offsets_of_regex_matches">@- and @+ provide starting/ending offsets of regex matches</a></li>
	</ul>

	<li><a href="#modules_and_pragmata">Modules and Pragmata</a></li>
	<ul>

		<li><a href="#modules">Modules</a></li>
		<li><a href="#pragmata">Pragmata</a></li>
	</ul>

	<li><a href="#utility_changes">Utility Changes</a></li>
	<ul>

		<li><a href="#dprofpp">dprofpp</a></li>
		<li><a href="#find2perl">find2perl</a></li>
		<li><a href="#h2xs">h2xs</a></li>
		<li><a href="#perlcc">perlcc</a></li>
		<li><a href="#perldoc">perldoc</a></li>
		<li><a href="#the_perl_debugger">The Perl Debugger</a></li>
	</ul>

	<li><a href="#improved_documentation">Improved Documentation</a></li>
	<li><a href="#performance_enhancements">Performance enhancements</a></li>
	<ul>

		<li><a href="#simple_sort___using____a______b___and_the_like_are_optimized">Simple <a href="../../lib/Pod/perlfunc.html#item_sort"><code>sort()</code></a> using { $a &lt;=&gt; $b } and the like are optimized</a></li>
		<li><a href="#optimized_assignments_to_lexical_variables">Optimized assignments to lexical variables</a></li>
		<li><a href="#faster_subroutine_calls">Faster subroutine calls</a></li>
		<li><a href="#delete____each____values___and_hash_iteration_are_faster">delete(), each(), <a href="../../lib/Pod/perlfunc.html#item_values"><code>values()</code></a> and hash iteration are faster</a></li>
	</ul>

	<li><a href="#installation_and_configuration_improvements">Installation and Configuration Improvements</a></li>
	<ul>

		<li><a href="#dusethreads_means_something_different">-Dusethreads means something different</a></li>
		<li><a href="#new_configure_flags">New Configure flags</a></li>
		<li><a href="#threadedness_and_64bitness_now_more_daring">Threadedness and 64-bitness now more daring</a></li>
		<li><a href="#long_doubles">Long Doubles</a></li>
		<li><a href="#dusemorebits">-Dusemorebits</a></li>
		<li><a href="#duselargefiles">-Duselargefiles</a></li>
		<li><a href="#installusrbinperl">installusrbinperl</a></li>
		<li><a href="#socks_support">SOCKS support</a></li>
		<li><a href="#a_flag"><code>-A</code> flag</a></li>
		<li><a href="#enhanced_installation_directories">Enhanced Installation Directories</a></li>
	</ul>

	<li><a href="#platform_specific_changes">Platform specific changes</a></li>
	<ul>

		<li><a href="#supported_platforms">Supported platforms</a></li>
		<li><a href="#dos">DOS</a></li>
		<li><a href="#os390__openedition_mvs_">OS390 (OpenEdition MVS)</a></li>
		<li><a href="#vms">VMS</a></li>
		<li><a href="#win32">Win32</a></li>
	</ul>

	<li><a href="#significant_bug_fixes">Significant bug fixes</a></li>
	<ul>

		<li><a href="#_handle__on_empty_files">&lt;HANDLE&gt; on empty files</a></li>
		<li><a href="#eval_______improvements"><code>eval '...'</code> improvements</a></li>
		<li><a href="#all_compilation_errors_are_true_errors">All compilation errors are true errors</a></li>
		<li><a href="#implicitly_closed_filehandles_are_safer">Implicitly closed filehandles are safer</a></li>
		<li><a href="#behavior_of_list_slices_is_more_consistent">Behavior of list slices is more consistent</a></li>
		<li><a href="#_____prototype_and__foo_a_"><code>(\$)</code> prototype and <code>$foo{a}</code></a></li>
		<li><a href="#goto__sub_and_autoload"><code>goto &amp;sub</code> and AUTOLOAD</a></li>
		<li><a href="#bareword_allowed_under_use_integer"><code>-bareword</code> allowed under <code>use integer</code></a></li>
		<li><a href="#failures_in_destroy__">Failures in <code>DESTROY()</code></a></li>
		<li><a href="#locale_bugs_fixed">Locale bugs fixed</a></li>
		<li><a href="#memory_leaks">Memory leaks</a></li>
		<li><a href="#spurious_subroutine_stubs_after_failed_subroutine_calls">Spurious subroutine stubs after failed subroutine calls</a></li>
		<li><a href="#taint_failures_under_u">Taint failures under <a href="../../lib/Pod/perlrun.html#item__2du"><code>-U</code></a></a></li>
		<li><a href="#end_blocks_and_the_c_switch">END blocks and the <a href="../../lib/Pod/perlrun.html#item__2dc"><code>-c</code></a> switch</a></li>
		<li><a href="#potential_to_leak_data_filehandles">Potential to leak DATA filehandles</a></li>
	</ul>

	<li><a href="#new_or_changed_diagnostics">New or Changed Diagnostics</a></li>
	<li><a href="#new_tests">New tests</a></li>
	<li><a href="#incompatible_changes">Incompatible Changes</a></li>
	<ul>

		<li><a href="#perl_source_incompatibilities">Perl Source Incompatibilities</a></li>
		<li><a href="#c_source_incompatibilities">C Source Incompatibilities</a></li>
		<li><a href="#compatible_c_source_api_changes">Compatible C Source API Changes</a></li>
		<li><a href="#binary_incompatibilities">Binary Incompatibilities</a></li>
	</ul>

	<li><a href="#known_problems">Known Problems</a></li>
	<ul>

		<li><a href="#thread_test_failures">Thread test failures</a></li>
		<li><a href="#ebcdic_platforms_not_supported">EBCDIC platforms not supported</a></li>
		<li><a href="#in_64bit_hpux_the_lib_io_multihomed_test_may_hang">In 64-bit HP-UX the lib/io_multihomed test may hang</a></li>
		<li><a href="#nextstep_3_3_posix_test_failure">NEXTSTEP 3.3 POSIX test failure</a></li>
		<li><a href="#tru64__aka_digital_unix__aka_dec_osf_1__lib_sdbm_test_failure_with_gcc">Tru64 (aka Digital UNIX, aka DEC OSF/1) lib/sdbm test failure with gcc</a></li>
		<li><a href="#unicos_mk_cc_failures_during_configure_run">UNICOS/mk CC failures during Configure run</a></li>
		<li><a href="#arrow_operator_and_arrays">Arrow operator and arrays</a></li>
		<li><a href="#experimental_features">Experimental features</a></li>
	</ul>

	<li><a href="#obsolete_diagnostics">Obsolete Diagnostics</a></li>
	<li><a href="#reporting_bugs">Reporting Bugs</a></li>
	<li><a href="#see_also">SEE ALSO</a></li>
	<li><a href="#history">HISTORY</a></li>
</ul>
<!-- INDEX END -->

<hr />
<p>
</p>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?