1. 21 Oct, 2009 6 commits
  2. 20 Oct, 2009 26 commits
  3. 19 Oct, 2009 8 commits
    • charset.c (cpp_init_iconv): Initialize utf8_cset_desc. · 2c6e3f55
      	* charset.c (cpp_init_iconv): Initialize utf8_cset_desc.
      	(_cpp_destroy_iconv): Destroy utf8_cset_desc, char16_cset_desc
      	and char32_cset_desc.
      	(converter_for_type): Handle CPP_UTF8STRING.
      	(cpp_interpret_string): Handle CPP_UTF8STRING and raw-strings.
      	* directives.c (get__Pragma_string): Handle CPP_UTF8STRING.
      	(parse_include): Reject raw strings.
      	* include/cpplib.h (CPP_UTF8STRING): New token type.
      	* internal.h (struct cpp_reader): Add utf8_cset_desc field.
      	* lex.c (lex_raw_string): New function.
      	(lex_string): Handle u8 string literals, call lex_raw_string
      	for raw string literals.
      	(_cpp_lex_direct): Call lex_string even for u8" and {,u,U,L,u8}R"
      	sequences.
      	* macro.c (stringify_arg): Handle CPP_UTF8STRING.
      
      	* c-common.c (c_parse_error): Handle CPP_UTF8STRING.
      	* c-lex.c (c_lex_with_flags): Likewise.  Test C_LEX_STRING_NO_JOIN
      	instead of C_LEX_RAW_STRINGS.
      	(lex_string): Handle CPP_UTF8STRING.
      	* c-parser.c (c_parser_postfix_expression): Likewise.
      	* c-pragma.h (C_LEX_RAW_STRINGS): Rename to ...
      	(C_LEX_STRING_NO_JOIN): ... this.
      
      	* parser.c (cp_lexer_print_token, cp_parser_is_string_literal,
      	cp_parser_string_literal, cp_parser_primary_expression): Likewise.
      	(cp_lexer_get_preprocessor_token): Use C_LEX_STRING_JOIN instead
      	of C_LEX_RAW_STRINGS.
      
      	* gcc.dg/raw-string-1.c: New test.
      	* gcc.dg/raw-string-2.c: New test.
      	* gcc.dg/raw-string-3.c: New test.
      	* gcc.dg/raw-string-4.c: New test.
      	* gcc.dg/raw-string-5.c: New test.
      	* gcc.dg/raw-string-6.c: New test.
      	* gcc.dg/raw-string-7.c: New test.
      	* gcc.dg/utf8-1.c: New test.
      	* gcc.dg/utf8-2.c: New test.
      	* gcc.dg/utf-badconcat2.c: New test.
      	* gcc.dg/utf-dflt2.c: New test.
      	* gcc.dg/cpp/include6.c: New test.
      	* g++.dg/ext/raw-string-1.C: New test.
      	* g++.dg/ext/raw-string-2.C: New test.
      	* g++.dg/ext/raw-string-3.C: New test.
      	* g++.dg/ext/raw-string-4.C: New test.
      	* g++.dg/ext/raw-string-5.C: New test.
      	* g++.dg/ext/raw-string-6.C: New test.
      	* g++.dg/ext/raw-string-7.C: New test.
      	* g++.dg/ext/utf8-1.C: New test.
      	* g++.dg/ext/utf8-2.C: New test.
      	* g++.dg/ext/utf-badconcat2.C: New test.
      	* g++.dg/ext/utf-dflt2.C: New test.
      
      From-SVN: r152995
      Jakub Jelinek committed
    • cris.c (cris_function_value, [...]): New functions. · 4d696ad0
      	* config/cris/cris.c (cris_function_value, cris_libcall_value,
      	cris_function_value_regno_p): New functions.
      	(cris_promote_function_mode): Update comment.
      	(TARGET_FUNCTION_VALUE, TARGET_LIBCALL_VALUE): Declare.
      	* config/cris/cris.h: (FUNCTION_VALUE, LIBCALL_VALUE): Remove.
      	(FUNCTION_VALUE_REGNO_P): Redefine, use cris_function_value_regno_p.
      	* config/cris/cris-protos.h (cris_function_value_regno_p): Declare.
      
      From-SVN: r152992
      Anatoly Sokolov committed
    • Fix dates. · 270213ca
      From-SVN: r152991
      Jakub Jelinek committed
    • unwind-dw2.c (execute_stack_op): Fix operand order for DW_OP_le, DW_OP_ge, DW_OP_lt and DW_OP_gt. · 4793ad6b
      	* unwind-dw2.c (execute_stack_op): Fix operand order for
      	DW_OP_le, DW_OP_ge, DW_OP_lt and DW_OP_gt.
      
      	* gcc.dg/cleanup-13.c: New test.
      
      From-SVN: r152989
      Jakub Jelinek committed
    • re PR fortran/41586 ([OOP] Allocatable _scalars_ are never auto-deallocated) · 1517fd57
      2009-10-19  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/41586
      	* parse.c (parse_derived): Correctly set 'alloc_comp' and 'pointer_comp'
      	for CLASS variables.
      	* trans-array.c (structure_alloc_comps): Handle deallocation and
      	nullification of allocatable scalar components.
      	* trans-decl.c (gfc_get_symbol_decl): Remember allocatable scalars for
      	automatic deallocation.
      	(gfc_trans_deferred_vars): Automatically deallocate allocatable scalars.
      
      
      2009-10-19  Janus Weil  <janus@gcc.gnu.org>
      
      	PR fortran/41586
      	* gfortran.dg/auto_dealloc_1.f90: New test case.
      
      From-SVN: r152988
      Janus Weil committed
    • Port from redhat/gcc-4_4-branch: · 55165bf6
      	2009-10-08  Jakub Jelinek  <jakub@redhat.com>
      	* gcc.dg/debug/vta-2.c: New test.
      
      	2009-09-30  Alexandre Oliva  <aoliva@redhat.com>
      	* gcc.dg/debug/vta-1.c: New.
      
      From-SVN: r152986
      Jakub Jelinek committed
    • gimple-low.c (struct lower_data): Add cannot_fallthru field. · a141816c
      	* gimple-low.c (struct lower_data): Add cannot_fallthru field.
      	(lower_stmt) <GIMPLE_BIND>: Add comment.
      	<GIMPLE_COND, GIMPLE_GOTO, GIMPLE_SWITCH>: Set cannot_fallthru to true
      	and return.
      	<GIMPLE_RETURN>: Remove the statement if cannot_fallthru is set.
      	Otherwise lower it and set cannot_fallthru to true.
      	<GIMPLE_TRY>: Update cannot_fallthru for GIMPLE_TRY_FINALLY and return.
      	<GIMPLE_CATCH, GIMPLE_EH_FILTER>; Set cannot_fallthru to false.
      	<GIMPLE_CALL>: Set cannot_fallthru to false for BUILT_IN_SETJMP and
      	to true for a noreturn call.  Do not remove statements.
      	<GIMPLE_OMP_PARALLEL, GIMPLE_OMP_TASK>: Set cannot_fallthru to false.
      	Set cannot_fallthru to false on function exit.
      	(gimple_stmt_may_fallthru) <GIMPLE_SWITCH>: Really return false.
      	<GIMPLE_ASSIGN>: Remove.
      
      From-SVN: r152984
      Eric Botcazou committed
    • re PR fortran/41755 (Segfault on invalid code) · 585ba38f
      2009-10-19  Tobias Burnus  <burnus@net-b.de>
                  Steven G. Kargl  <kargl@gcc.gnu.org>
      
              PR fortran/41755
              * symbol.c (gfc_undo_symbols): Add NULL check.
              * match.c (gfc_match_equivalence): Add check for
              missing comma.
      
      2009-10-19  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/41755
              * gfortran.dg/equiv_8.f90: New test.
              * gfortran.dg/class_allocate_1.f03: Remove obsolete FIXME.
      
      
      Co-Authored-By: Steven G. Kargl <kargl@gcc.gnu.org>
      
      From-SVN: r152983
      Tobias Burnus committed