Age | Commit message (Collapse) | Author | Files | Lines |
|
gcc/ada/
* sem_ch10.adb, sem_ch10.ads,
sem_ch12.adb, sem_ch12.ads, sem_ch13.adb, sem_ch13.ads,
sem_ch3.adb, sem_ch4.adb, sem_ch5.adb, sem_ch6.adb,
sem_ch6.ads, sem_ch8.adb, sem_ch8.ads, sem_ch9.adb,
sem_elab.adb, sem_elab.ads, sem_elim.ads, sem_eval.adb,
sem_eval.ads, sem_intr.adb, sem_mech.adb, sem_mech.ads,
sem_prag.adb, sem_prag.ads, sem_res.adb, sem_res.ads,
sem_type.adb, sem_util.adb, sem_util.ads, sem_warn.adb,
sem_warn.ads: Fix comment typos.
From-SVN: r134242
|
|
gcc/ada/
* s-secsta.adb, s-sequio.ads, s-shasto.ads,
s-soflin.ads, s-stalib.ads, s-stausa.adb,
s-stausa.ads, s-strxdr.adb, s-taenca.adb, s-taenca.ads,
s-taprob.adb, s-taprop-hpux-dce.adb, s-taprop-irix.adb,
s-taprop-linux.adb, s-taprop-mingw.adb, s-taprop-posix.adb,
s-taprop-solaris.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
s-taprop-vxworks.adb, s-taprop.ads, s-tarest.adb,
s-tarest.ads, s-tasini.adb, s-tasini.ads, s-taskin.ads,
s-tasque.ads, s-tassta.adb, s-tassta.ads, s-tasuti.ads,
s-tpoben.adb, s-tpoben.ads, s-tpobop.adb,
s-tpopsp-posix.adb, s-tpopsp-rtems.adb, s-tposen.adb,
s-tposen.ads, s-traceb-hpux.adb, s-traces.ads,
s-trafor-default.ads, s-unstyp.ads, s-utf_32.ads,
s-vaflop.adb, s-vaflop.ads, s-valrea.adb, s-valuti.adb,
s-wchstw.ads, s-wchwts.adb, s-wchwts.ads, scans.ads,
scn.adb, scng.adb, seh_init.c, sem.ads, sem_aggr.adb,
sem_attr.adb, sem_attr.ads, sem_case.adb, sem_case.ads,
sem_cat.adb, sem_cat.ads: Fix comment typos.
From-SVN: r134241
|
|
From-SVN: r134240
|
|
the world".
2008-04-12 Andrew Pinski <pinskia@gmail.com>
* config/rs6000/rs6000.c (compute_save_world_info): Set lr_save_p if
we are going to "save the world".
2008-04-12 Andrew Pinski <pinskia@gmail.com>
* gcc.target/powerpc/darwin-save-world-1.c: New test.
From-SVN: r134237
|
|
("*andqi_lowpart_non_v32", "*andqi_lowpart_v32"): Use "+" for the
operand 0 constraint, not "=".
From-SVN: r134236
|
|
From-SVN: r134234
|
|
2008-04-12 Joel Sherrill <joel@oarcorp.com>
gcc/ada/
PR ada/35825
* g-soccon-rtems.ads: Add IP_PKTINFO as unsupported.
From-SVN: r134230
|
|
PR ada/35917
* s-linux-hppa.ads: Fix syntax errors.
From-SVN: r134226
|
|
* system.h: Change ASSERT_CHECKING to ENABLE_ASSERT_CHECKING.
From-SVN: r134219
|
|
From-SVN: r134213
|
|
positions_needed * CHAR_BIT.
2008-04-11 H.J. Lu <hongjiu.lu@intel.com>
* dse.c (record_store): Use HOST_BITS_PER_WIDE_INT instead
of size of positions_needed * CHAR_BIT.
From-SVN: r134203
|
|
2008-04-11 H.J. Lu <hongjiu.lu@intel.com>
PR middle-end/35897
* dse.c (store_info): Change positions_needed to unsigned
HOST_WIDE_INT.
(lowpart_bitmask): New.
(record_store): Cast to unsigned HOST_WIDE_INT for
positions_needed. Assert width <= size of positions_needed *
CHAR_BIT. Call lowpart_bitmask to initialize positions_needed.
(check_mem_read_rtx): Use unsigned HOST_WIDE_INT on mask. Call
lowpart_bitmask to set mask.
From-SVN: r134199
|
|
* config/bfin/constraints.md: New file.
* config/bfin/bfin.md: Include it.
(adddi3): Use satisfies_constraint functions instead of the old macros.
* config/bfin/bfin.h (REG_CLASS_FROM_LETTER, CONSTRAINT_LEN,
CONST_18UBIT_IMM_P, CONST_16BIT_IMM_P, CONST_16UBIT_IMM_P,
CONST_7BIT_IMM_P, CONST_7NBIT_IMM_P, CONST_5UBIT_IMM_P,
CONST_4BIT_IMM_P, CONST_4UBIT_IMM_P, CONST_3BIT_IMM_P,
CONST_3UBIT_IMM_P, CONST_OK_FOR_K, CONST_OK_FOR_P, CONST_OK_FOR_M,
CONST_OK_FOR_CONSTRAINT_P, CONST_DOUBLE_OK_FOR_LETTER,
EXTRA_CONSTRAINT): Delete.
* config/bfin/predicates.md (highbits_operand, reg_or_7bit_operand,
reg_or_neg7bit_operand): Use satisfies_constraint functions instead
of the old macros.
* config/bfin/bfin.c: Include "tm-constrs.h".
(bfin_secondary_reload, split_load_immediate, bfin_rtx_costs):
Use satisfies_constraint functions instead of the old macros.
* doc/md.texi (Blackfin Constraints): Update file name reference.
From-SVN: r134198
|
|
optimization)
2008-04-11 Richard Guenther <rguenther@suse.de>
PR tree-optimization/35869
* tree-vrp.c (execute_vrp): Move switch statement update after
jump threading. Schedule another cfg cleanup run.
* gcc.c-torture/compile/pr35869.c: New testcase.
From-SVN: r134197
|
|
2008-04-11 H.J. Lu <hongjiu.lu@intel.com>
* gcc.target/i386/sse-13.c: Move __builtin_ia32_round* to new
/* mmintrin-common.h */ section.
* gcc.target/i386/sse-14.c: Add tests for mmintrin-common.h.
From-SVN: r134195
|
|
PR c/35744
* attribs.c (decl_attributes): Return early on errorneous node.
* gcc.dg/attr-error-1.c: New test.
From-SVN: r134193
|
|
2008-04-10 Oleg Ryjkov <olegr@google.com>
* tree.h (struct tree_base): Added a new flag default_def_flag.
(SSA_NAME_IS_DEFAULT_DEF): Changed to use the new flag.
From-SVN: r134192
|
|
* config.gcc (need_64bit_hwint): Need 64bit hwint for sh-*-*.
[libcpp]
* configure.ac: (need_64bit_hwint): Need 64bit hwint for sh-*-*
and shbe-*-*.
* configure: Rebuilt.
From-SVN: r134190
|
|
From-SVN: r134188
|
|
do_output_reload, at reload1.c:7331)
PR target/35768
* pa.md: Define mode iterator P. Define mode attribute dwc.
(dcacheflush): Update pattern to use iterator P and attribute dwc.
(icacheflush): Likewise.
* pa.h (INITIALIZE_TRAMPOLINE): Use dcacheflushsi/icacheflushsi if
!TARGET_64BIT, and dcacheflushdi/icacheflushdi if TARGET_64BIT.
From-SVN: r134182
|
|
From-SVN: r134181
|
|
gcc/ada/
* gnat_ugn.texi: Fix typos.
* raise-gcc.c, repinfo.adb, repinfo.ads, restrict.adb,
restrict.ads, rtsfind.adb, rtsfind.ads, s-arit64.ads,
s-asthan-vms-alpha.adb, s-auxdec.ads, s-casuti.ads,
s-fatflt.ads, s-fatgen.adb, s-fatlfl.ads,
s-fatllf.ads, s-fatsfl.ads, s-filofl.ads,
s-finimp.adb, s-finroo.ads, s-fishfl.ads,
s-fvadfl.ads, s-fvaffl.ads, s-fvagfl.ads,
s-hibaen.ads, s-htable.ads, s-imgcha.adb,
s-imgenu.ads, s-imgint.adb, s-imgrea.adb,
s-inmaop-dummy.adb, s-inmaop.ads, s-interr-vms.adb,
s-interr-vxworks.adb, s-interr.adb, s-interr.ads,
s-intman-vxworks.ads, s-intman.ads, s-mastop-irix.adb,
s-os_lib.adb, s-os_lib.ads, s-osinte-aix.ads,
s-osinte-darwin.ads, s-osinte-freebsd.ads,
s-osinte-hpux.ads, s-osinte-lynxos-3.adb,
s-osinte-lynxos-3.ads, s-osinte-lynxos.ads,
s-osinte-rtems.ads, s-osinte-solaris-posix.ads,
s-osprim-mingw.adb, s-osprim-vms.adb, s-parame-ae653.ads,
s-parame-hpux.ads, s-parame-vms-alpha.ads,
s-parame-vms-ia64.ads, s-parame-vms-restrict.ads,
s-parame-vxworks.ads, s-parame.ads, s-parint.adb,
s-parint.ads, s-poosiz.adb, s-proinf-irix-athread.ads,
s-proinf.ads, s-regexp.adb, s-regpat.adb, s-regpat.ads,
s-rident.ads: Fix comment typos.
From-SVN: r134177
|
|
or TRUTH_ORIF_EXPR.
2008-04-10 Rafael Espindola <espindola@google.com>
* gcc/tree-vrp.c (extract_range_from_binary_expr): Don't handle
TRUTH_ANDIF_EXPR or TRUTH_ORIF_EXPR.
(extract_range_from_expr): The same.
From-SVN: r134176
|
|
* config/mips/mips.md (GPR2): New mode iterator.
(seq): Add comment.
(*seq_<mode>, *seq_<mode>_mips16, *sne_<mode>, *sgt<u>_<mode>,
*sgt<u>_<mode>_mips16, *sge<u>_<mode>, *slt<u>_<mode>,
*slt<u>_<mode>_mips16 *sle<u>_<mode>, *sle<u>_<mode>_mips16):
Rewrite these to take two modes, the mode of comparison and the
mode of the destination.
* config/mips/mips.c (mips_expand_scc): Instead of having
paradoxical subreg as destination, expand "narrowing" scc if mode
of comparison is SI and target is requested in DI mode.
(mips_emit_int_order_test): Update comment. Make mode of
comparison match CMP0 rather than TARGET. When creating inverse
target use mode of TARGET.
testsuite/
* gcc.target/mips/scc-2.c: New test.
* gcc.target/mips/scc-3.c: New test.
* gcc.target/mips/scc-4.c: New test.
From-SVN: r134167
|
|
GCOV_COUNTERS_SUMMABLE counters.
* gcov-dump.c (tag_summary): Only print summaries for the first
GCOV_COUNTERS_SUMMABLE counters.
From-SVN: r134166
|
|
* config/i386/i386.md (absneg): New code iterator.
(absnegprefix): New code attribute.
(<code><mode>2): Macroize expander from abs<mode>2 and neg<mode>2
patterns using absneg code iterator.
(<code>tf2): Macroize expander from abstf2 and negtf2 patterns
using absneg code iterator.
(*<code><mode>2_1): Macroize insn pattern from *abs<mode>2_1 and
*neg<mode>2 patterns using absneg code iterator.
(*<code>extendsfdf2): Macroize insn pattern from *absextendsfdf2 and
*negextendsfdf2 patterns using absneg code iterator.
(*<code>extendsfxf2): Macroize insn pattern from *absextendsfxf2 and
*negextendsfxf2 patterns using absneg code iterator.
(*<code>extendsfdf2): Macroize insn pattern from *absextendsfdf2 and
*negextendsfdf2 patterns using absneg code iterator.
* config/i386/sse.md (<code><mode>2): Macroize expander from
abs<mode>2 and neg<mode>2 patterns using absneg code iterator.
From-SVN: r134165
|
|
2008-04-10 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.h: Remove the remains of the recent search
& replace action of current_function_outgoing_args_size.
From-SVN: r134164
|
|
PR tree-optimization/35821
* tree-vect-transform.c (vect_create_data_ref_ptr): Add check that
NEW_STMT_LIST is not NULL.
From-SVN: r134162
|
|
From-SVN: r134157
|
|
target sets no_trampolines)
2008-04-09 Andy Hutchinson <hutchinsonandy@aim.com>
PR testsuite/34894
PR testsuite/33782
* lib/target-supports.dg: Add check_effective_target_trampolines.
Disable profiling for avr-*-*.
* gcc.c-torture/compile/pr27889.c: dg-requires trampolines.
* gcc.c-torture/compile/nested-1.c: Ditto.
* gcc.c-torture/compile/20050122-2.c: Ditto.
* gcc.c-torture/compile/20010226-1.c: Ditto.
* gcc.c-torture/compile/20010327-1.c: Skip for avr-*-*.
* gcc.c-torture/compile/980506-1.c: Ditto.
* gcc.c-torture/compile/20020604-1.c: Ditto.
* gcc.c-torture/compile/limits-stringlit.c: Ditto
* gcc.c-torture/compile/20001226-1.c: Ditto
From-SVN: r134153
|
|
PR c++/35708
* semantics.c (finish_compound_literal): Return a TARGET_EXPR,
not a pushed variable.
From-SVN: r134146
|
|
disabled on AIX)
PR libstdc++/35597
* toplev.c (process_options): Remove -ffunction-sections debugging
warning.
From-SVN: r134143
|
|
gcc/ada/
PR ada/28305
* sem_ch6.adb (Build_Body_To_Inline): Do not save and restore
environment if generic instance is a top-level one.
gcc/testsuite/
PR ada/28305
* gnat.dg/specs/fe_inlining.ads, gnat.dg/specs/fe_inlining_helper.ads,
gnat.dg/specs/fe_inlining_helper.adb: New test.
From-SVN: r134142
|
|
PR middle-end/PR28690
* explow.c (break_out_memory_refs): Use simplify_gen_binary rather
than gen_rtx_fmt_ee to perform more canonicalizations.
From-SVN: r134139
|
|
2008-04-09 Kai Tietz <kai.tietz@onevision.com>
* gcc.dg/torture/fp-int-convert.h: Use TImode type for
x86_64-pc-mingw target.
* gcc.dg/titype-1.c: Likewise.
From-SVN: r134135
|
|
* lib/target-supports.exp (check_effective_target_vxworks_kernel):
Fix comment.
(check_effective_target_vxworks_rtp): New procedure.
* g++.dg/opt/20050511-1.C: Rename UINT32 for VxWorks kernel mode.
* g++.dg/warn/miss-format-1.C: XFAIL for VxWorks.
* g++.old-deja/g++.abi/cxa_vec.C: XFAIL for VxWorks kernels.
* g++.old-deja/g++.brendan/new3.C: Likewise.
* g++.old-deja/g++.eh/badalloc1.C: XFAIL for VxWorks RTPs.
* g++.old-deja/g++.law/missed-error2.C: Undefine max for
VxWorks kernel mode.
* g++.old-deja/g++.mike/init1.C: XFAIL for VxWorks kernel mode.
* g++.old-deja/g++.mike/p2736.C: Likewise.
* g++.old-deja/g++.mike/p658.C: Undefine OK for VxWorks kernel mode.
* g++.old-deja/g++.other/headers1.C: Likewise min and max.
* g++.old-deja/g++.robertl/eb79.C: Undefine max for VxWorks
kernel mode.
From-SVN: r134134
|
|
* io/list_read.c (snprintf): Define if HAVE_SNPRINTF isn't defined.
(nml_read_obj): Add nml_err_msg_size argument. Pass it down to
recursive call. Use snprintf instead of sprintf when %s nl->var_name
is used.
(nml_get_obj_data): Add nml_err_msg_size argument. Pass it down to
nml_read_obj call. Use snprintf instead of sprintf when %s
nl->var_name is used. Pass nml_err_msg to nml_parse_qualifier instead
of parse_err_msg array. Append " for namelist variable " and
nl->var_name to it.
(namelist_read): Increase size of nml_err_msg array to 200. Pass
sizeof nml_err_msg as extra argument to nml_get_obj_data.
* gfortran.dg/namelist_47.f90: New test.
From-SVN: r134132
|
|
2008-04-09 Doug Rupp <rupp@adacore.com>
* decl.c (validate_size): Set minimum size for fat pointers same as
access types. Code clean ups.
* gmem.c (xstrdup32): New macro for 32bit dup on VMS, noop otherwise
(__gnat_gmem_a2l_initialize): Dup exename into 32 bit memory on VMS
* s-auxdec-vms_64.ads, s-auxdec.ads (Short_Address_Size): New constant
* s-crtl.ads (malloc32) New function, alias for malloc
(realloc32) New function, alias for realloc
* socket.c (__gnat_new_socket_set): Malloc fd_set in 32 bits on VMS
* utils2.c (build_call_alloc_dealloc): Return call to short malloc if
allocator size is 32 and default pointer size is 64.
(find_common_type): Document assumption on t1/t2 vs lhs/rhs. Force use of
lhs type if smaller, whatever the modes.
* gigi.h (malloc32_decl): New macro definition
* utils.c (init_gigi_decls): New malloc32_decl
Various code clean ups.
* s-asthan-vms-alpha.adb (Process_AST.To_Address): Unchecked convert to
Task_Address vice System.Address.
* s-taspri-vms.ads: Import System.Aux_DEC
(Task_Address): New subtype of System.Aux_DEC.Short_Address
(Task_Address_Size): New constant size of System.Aux_DEC.Short_Address
* s-asthan-vms-alpha.adb (Process_AST.To_Address): Unchecked convert to
Task_Address vice System.Address.
* s-inmaop-vms.adb: Import System.Task_Primitives
(To_Address): Unchecked convert to Task_Address vice System.Address
* s-taprop-vms.adb (Timed_Delay): Always set the timer even if delay
expires now.
(To_Task_ID) Unchecked convert from Task_Adddress vice System.Address
(To_Address) Unchecked convert to Task_Address vice System.Address
* s-tpopde-vms.adb: Remove unnecessary warning pragmas
* g-socthi-vms.ads: Add 32bit size clauses on socket access types.
From-SVN: r134131
|
|
* call.c (build_op_delete_call): Fix quotation in warning message.
* decl.c (grokdeclarator): Quote keyword in error message.
* pt.c (check_for_bare_parameter_packs): Fix quotation in error
message.
From-SVN: r134130
|
|
rather than using "%s".
* parser.c (cp_parser_check_type_definition): Print error string
directly rather than using "%s".
(cp_parser_postfix_expression): Fix quotation.
(cp_parser_decltype): Likewise.
(cp_parser_sizeof_operand): Fix quotation. Simplify.
From-SVN: r134129
|
|
with CONCAT rather than using "%s".
* parser.c (cp_parser_non_integral_constant_expression): Build error
message with CONCAT rather than using "%s".
(cp_parser_primary_expression): Fix quotation.
(cp_parser_postfix_expression): Likewise.
(cp_parser_postfix_dot_deref_expression): Likewise.
(cp_parser_unary_expression): Likewise.
(cp_parser_new_expression): Likewise.
(cp_parser_delete_expression): Likewise.
From-SVN: r134128
|
|
not as `('.
* parser.c (cp_parser_asm_specification_opt): Print CPP_CLOSE_PAREN
as `)', not as `('. Fix quotation.
(cp_parser_consume_semicolon_at_end_of_statement): Fix quotation.
(cp_parser_primary_expression): Likewise.
(cp_parser_nested_name_specifier_opt): Likewise.
(cp_parser_postfix_expression): Likewise.
(cp_parser_postfix_open_square_expression): Likewise.
(cp_parser_parenthesized_expression_list): Likewise.
(cp_parser_pseudo_destructor_name): Likewise.
(cp_parser_new_expression): Likewise.
(cp_parser_direct_new_declarator): Likewise.
(cp_parser_delete_expression): Likewise.
(cp_parser_cast_expression): Likewise.
(cp_parser_question_colon_clause): Likewise.
(cp_parser_builtin_offsetof): Likewise.
(cp_parser_trait_expr): Likewise.
(cp_parser_label_for_labeled_statement): Likewise.
(cp_parser_compound_statement): Likewise.
(cp_parser_selection_statement): Likewise.
(cp_parser_condition): Likewise.
(cp_parser_iteration_statement): Likewise.
(cp_parser_already_scoped_statement): Likewise.
(cp_parser_simple_declaration): Likewise.
(cp_parser_linkage_specification): Likewise.
(cp_parser_static_assert): Likewise.
(cp_parser_decltype): Likewise.
(cp_parser_conversion_function_id): Likewise.
(cp_parser_operator_function_id): Likewise.
(cp_parser_operator): Likewise.
(cp_parser_type_parameter): Likewise.
(cp_parser_template_id): Likewise.
(cp_parser_explicit_instantiation): Likewise.
(cp_parser_explicit_specialization): Likewise.
(cp_parser_enum_specifier): Likewise.
(cp_parser_namespace_definition): Likewise.
(cp_parser_namespace_alias_definition): Likewise.
(cp_parser_using_declaration): Likewise.
(cp_parser_using_directive): Likewise.
(cp_parser_asm_definition): Likewise.
(cp_parser_direct_declarator): Likewise.
(cp_parser_ptr_operator): Likewise.
(cp_parser_parameter_declaration_clause): Likewise.
(cp_parser_initializer_clause): Likewise.
(cp_parser_class_specifier): Likewise.
(cp_parser_member_specification_opt): Likewise.
(cp_parser_member_declaration): Likewise.
(cp_parser_pure_specifier): Likewise.
(cp_parser_constant_initializer): Likewise.
(cp_parser_base_clause): Likewise.
(cp_parser_exception_specification_opt): Likewise.
(cp_parser_try_block): Likewise.
(cp_parser_function_try_block): Likewise.
(cp_parser_handler): Likewise.
(cp_parser_throw_expression): Likewise.
(cp_parser_asm_operand_list): Likewise.
(cp_parser_attributes_opt): Likewise.
(cp_parser_label_declaration): Likewise.
(cp_parser_constructor_declarator_p): Likewise.
(cp_parser_template_declaration_after_export): Likewise.
(cp_parser_single_declaration): Likewise.
(cp_parser_objc_message_expression): Likewise.
(cp_parser_objc_message_args): Likewise.
(cp_parser_objc_encode_expression): Likewise.
(cp_parser_objc_defs_expression): Likewise.
(cp_parser_objc_protocol_expression): Likewise.
(cp_parser_objc_selector_expression): Likewise.
(cp_parser_objc_protocol_refs_opt): Likewise.
(cp_parser_objc_typename): Likewise.
(cp_parser_objc_method_keyword_params): Likewise.
(cp_parser_objc_superclass_or_category): Likewise.
(cp_parser_objc_try_catch_finally_statement): Likewise.
(cp_parser_objc_synchronized_statement): Likewise.
(cp_parser_objc_throw_statement): Likewise.
(cp_parser_omp_var_list_no_open): Likewise.
(cp_parser_omp_clause_default): Likewise.
(cp_parser_omp_clause_if): Likewise.
(cp_parser_omp_clause_num_threads): Likewise.
(cp_parser_omp_clause_reduction): Likewise.
(cp_parser_omp_clause_schedule): Likewise.
(cp_parser_omp_critical): Likewise.
(cp_parser_omp_for_loop): Likewise.
(cp_parser_omp_sections_scope): Likewise.
From-SVN: r134127
|
|
From-SVN: r134126
|
|
From-SVN: r134120
|
|
error))
PR driver/35665
* collect2.c (write_c_file): Don't wrap in "#ifdef __cplusplus".
From-SVN: r134116
|
|
2008-04-09 Richard Guenther <rguenther@suse.de>
* tree-cfg.c (verify_stmt): Print complete bogus stmt.
(dump_function_to_file): Dump function arguments with types.
* gfortran.dg/bind_c_usage_14.f03: Adjust.
From-SVN: r134115
|
|
integers)
PR target/35005
* execute/20071221-1.c: Adapt test for 16 bit int targets.
* execute/pr35163.c: Ditto.
From-SVN: r134114
|
|
change the result.
2008-04-08 Richard Guenther <rguenther@suse.de>
* fold-const.c (fold_widened_comparison): Do not allow
sign-changes that change the result.
* gcc.c-torture/execute/20080408-1.c: New testcase.
From-SVN: r134108
|
|
rs6000_check_sdmode)
PR target/35839
* config/rs6000/rs6000.c (rs6000_check_sdmode): Handle additional
kinds of indirect references.
From-SVN: r134107
|
|
* config/rs6000/rs6000.c (rs6000_output_function_epilogue): Update
GNU Fortran language string.
From-SVN: r134106
|