summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordoko <doko@6ca36cf4-e1d1-0310-8c6f-e303bb2178ca>2014-06-09 12:51:15 +0000
committerdoko <doko@6ca36cf4-e1d1-0310-8c6f-e303bb2178ca>2014-06-09 12:51:15 +0000
commit6d23dcec0e1251d6cfe13601a797e8adda183cb1 (patch)
tree429e2b58be6148bdfb3de1975bf12918ce1d1568
parentc7c0a056e8b1ce8259540e75511da2872af166ec (diff)
downloadgcc-49-6d23dcec0e1251d6cfe13601a797e8adda183cb1.tar.gz
* Update to SVN 20140608 (r211353) from the gcc-4_9-branch.
git-svn-id: svn://svn.debian.org/svn/gcccvs/branches/sid/gcc-4.9@7440 6ca36cf4-e1d1-0310-8c6f-e303bb2178ca
-rw-r--r--debian/changelog6
-rw-r--r--debian/patches/svn-updates.diff472
2 files changed, 444 insertions, 34 deletions
diff --git a/debian/changelog b/debian/changelog
index a444b0e..bf7fc09 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,6 @@
-gcc-4.9 (4.9.0-6) UNRELEASED; urgency=medium
+gcc-4.9 (4.9.0-6) unstable; urgency=medium
- * Update to SVN 20140607 (r211341) from the gcc-4_9-branch.
+ * Update to SVN 20140608 (r211353) from the gcc-4_9-branch.
* Fix -Wno-format when -Wformat-security is the default (Steve Beattie).
LP: #1317305.
* Don't install the libstdc++ pretty printer file into the debug directory,
@@ -12,7 +12,7 @@ gcc-4.9 (4.9.0-6) UNRELEASED; urgency=medium
Closes: #745906.
* Update patches for snapshot builds.
- -- Matthias Klose <doko@debian.org> Sat, 07 Jun 2014 09:59:39 +0200
+ -- Matthias Klose <doko@debian.org> Sun, 08 Jun 2014 11:57:07 +0200
gcc-4.9 (4.9.0-5) unstable; urgency=medium
diff --git a/debian/patches/svn-updates.diff b/debian/patches/svn-updates.diff
index 9d1f4d8..b5910cc 100644
--- a/debian/patches/svn-updates.diff
+++ b/debian/patches/svn-updates.diff
@@ -1,10 +1,10 @@
-# DP: updates from the 4.9 branch upto 20140607 (r211341).
+# DP: updates from the 4.9 branch upto 20140608 (r211353).
last_updated()
{
cat > ${dir}LAST_UPDATED <<EOF
-Sat Jun 7 09:49:40 CEST 2014
-Sat Jun 7 07:49:40 UTC 2014 (revision 211341)
+Sun Jun 8 11:53:38 CEST 2014
+Sun Jun 8 09:53:38 UTC 2014 (revision 211353)
EOF
}
@@ -1060,6 +1060,97 @@ Index: libstdc++-v3/include/std/tuple
#endif
// This class helps construct the various comparison operations on tuples
+Index: libstdc++-v3/include/std/iomanip
+===================================================================
+--- a/src/libstdc++-v3/include/std/iomanip (.../tags/gcc_4_9_0_release)
++++ b/src/libstdc++-v3/include/std/iomanip (.../branches/gcc-4_9-branch)
+@@ -41,7 +41,10 @@
+
+ #if __cplusplus >= 201103L
+ #include <locale>
++#if __cplusplus > 201103L
++#include <sstream> // used in quoted.
+ #endif
++#endif
+
+ namespace std _GLIBCXX_VISIBILITY(default)
+ {
+@@ -342,7 +345,6 @@
+
+ /**
+ * @brief Struct for delimited strings.
+- * The left and right delimiters can be different.
+ */
+ template<typename _String, typename _CharT>
+ struct _Quoted_string
+@@ -364,8 +366,10 @@
+ };
+
+ /**
+- * @brief Inserter for delimited strings.
+- * The left and right delimiters can be different.
++ * @brief Inserter for quoted strings.
++ *
++ * _GLIBCXX_RESOLVE_LIB_DEFECTS
++ * DR 2344 quoted()'s interaction with padding is unclear
+ */
+ template<typename _CharT, typename _Traits>
+ auto&
+@@ -372,21 +376,24 @@
+ operator<<(std::basic_ostream<_CharT, _Traits>& __os,
+ const _Quoted_string<const _CharT*, _CharT>& __str)
+ {
+- __os << __str._M_delim;
++ std::basic_ostringstream<_CharT, _Traits> __ostr;
++ __ostr << __str._M_delim;
+ for (const _CharT* __c = __str._M_string; *__c; ++__c)
+ {
+ if (*__c == __str._M_delim || *__c == __str._M_escape)
+- __os << __str._M_escape;
+- __os << *__c;
++ __ostr << __str._M_escape;
++ __ostr << *__c;
+ }
+- __os << __str._M_delim;
++ __ostr << __str._M_delim;
+
+- return __os;
++ return __os << __ostr.str();
+ }
+
+ /**
+- * @brief Inserter for delimited strings.
+- * The left and right delimiters can be different.
++ * @brief Inserter for quoted strings.
++ *
++ * _GLIBCXX_RESOLVE_LIB_DEFECTS
++ * DR 2344 quoted()'s interaction with padding is unclear
+ */
+ template<typename _CharT, typename _Traits, typename _String>
+ auto&
+@@ -393,16 +400,17 @@
+ operator<<(std::basic_ostream<_CharT, _Traits>& __os,
+ const _Quoted_string<_String, _CharT>& __str)
+ {
+- __os << __str._M_delim;
++ std::basic_ostringstream<_CharT, _Traits> __ostr;
++ __ostr << __str._M_delim;
+ for (auto& __c : __str._M_string)
+ {
+ if (__c == __str._M_delim || __c == __str._M_escape)
+- __os << __str._M_escape;
+- __os << __c;
++ __ostr << __str._M_escape;
++ __ostr << __c;
+ }
+- __os << __str._M_delim;
++ __ostr << __str._M_delim;
+
+- return __os;
++ return __os << __ostr.str();
+ }
+
+ /**
Index: libstdc++-v3/include/std/future
===================================================================
--- a/src/libstdc++-v3/include/std/future (.../tags/gcc_4_9_0_release)
@@ -1882,7 +1973,15 @@ Index: libstdc++-v3/ChangeLog
===================================================================
--- a/src/libstdc++-v3/ChangeLog (.../tags/gcc_4_9_0_release)
+++ b/src/libstdc++-v3/ChangeLog (.../branches/gcc-4_9-branch)
-@@ -1,3 +1,148 @@
+@@ -1,3 +1,156 @@
++2014-06-07 Ed Smith-Rowland <3dw4rd@verizon.net>
++
++ Backport from mainline
++ DR 2344 - std::quoted doesn't respect padding
++ * include/std/iomanip: Allow for padding in quoted inserters.
++ * testsuite/27_io/manipulators/standard/char/dr2344.cc: New.
++ * testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc: New.
++
+2014-06-03 Jonathan Wakely <jwakely@redhat.com>
+
+ * include/bits/regex_executor.tcc (_Executor<>::_M_main): Move instead
@@ -2031,6 +2130,116 @@ Index: libstdc++-v3/ChangeLog
2014-04-22 Release Manager
* GCC 4.9.0 released.
+Index: libstdc++-v3/testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc
+===================================================================
+--- a/src/libstdc++-v3/testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc (.../tags/gcc_4_9_0_release)
++++ b/src/libstdc++-v3/testsuite/27_io/manipulators/standard/wchar_t/dr2344.cc (.../branches/gcc-4_9-branch)
+@@ -0,0 +1,50 @@
++// { dg-do run }
++// { dg-options "-std=gnu++14" }
++
++// Copyright (C) 2014 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library. This library is free
++// software; you can redistribute it and/or modify it under the
++// terms of the GNU General Public License as published by the
++// Free Software Foundation; either version 3, or (at your option)
++// any later version.
++
++// This library is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING3. If not see
++// <http://www.gnu.org/licenses/>.
++
++// 27.7.6 - Quoted manipulators [quoted.manip]
++
++#include <sstream>
++#include <iomanip>
++#include <testsuite_hooks.h>
++
++void
++test01()
++{
++ bool test [[gnu::unused]] = true;
++
++ std::wostringstream ssx;
++ ssx << L"[" << std::left << std::setfill(L'x') << std::setw(20) << LR"("AB \"CD\" EF")" << L"]";
++ VERIFY( ssx.str() == LR"(["AB \"CD\" EF"xxxxxx])" );
++
++ std::wostringstream ssy;
++ ssy << L"[" << std::left << std::setfill(L'y') << std::setw(20) << std::quoted(LR"(GH "IJ" KL)") << L"]";
++ VERIFY( ssy.str() == LR"(["GH \"IJ\" KL"yyyyyy])" );
++
++ std::wostringstream ssz;
++ ssz << L"[" << std::right << std::setfill(L'z') << std::setw(20) << std::quoted(LR"(PQ "RS" TU)") << L"]";
++ VERIFY( ssz.str() == LR"([zzzzzz"PQ \"RS\" TU"])" );
++}
++
++int
++main()
++{
++ test01();
++ return 0;
++}
+Index: libstdc++-v3/testsuite/27_io/manipulators/standard/char/dr2344.cc
+===================================================================
+--- a/src/libstdc++-v3/testsuite/27_io/manipulators/standard/char/dr2344.cc (.../tags/gcc_4_9_0_release)
++++ b/src/libstdc++-v3/testsuite/27_io/manipulators/standard/char/dr2344.cc (.../branches/gcc-4_9-branch)
+@@ -0,0 +1,50 @@
++// { dg-do run }
++// { dg-options "-std=gnu++14" }
++
++// Copyright (C) 2014 Free Software Foundation, Inc.
++//
++// This file is part of the GNU ISO C++ Library. This library is free
++// software; you can redistribute it and/or modify it under the
++// terms of the GNU General Public License as published by the
++// Free Software Foundation; either version 3, or (at your option)
++// any later version.
++
++// This library is distributed in the hope that it will be useful,
++// but WITHOUT ANY WARRANTY; without even the implied warranty of
++// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++// GNU General Public License for more details.
++
++// You should have received a copy of the GNU General Public License along
++// with this library; see the file COPYING3. If not see
++// <http://www.gnu.org/licenses/>.
++
++// 27.7.6 - Quoted manipulators [quoted.manip]
++
++#include <sstream>
++#include <iomanip>
++#include <testsuite_hooks.h>
++
++void
++test01()
++{
++ bool test [[gnu::unused]] = true;
++
++ std::ostringstream ssx;
++ ssx << "[" << std::left << std::setfill('x') << std::setw(20) << R"("AB \"CD\" EF")" << "]";
++ VERIFY( ssx.str() == R"(["AB \"CD\" EF"xxxxxx])" );
++
++ std::ostringstream ssy;
++ ssy << "[" << std::left << std::setfill('y') << std::setw(20) << std::quoted(R"(GH "IJ" KL)") << "]";
++ VERIFY( ssy.str() == R"(["GH \"IJ\" KL"yyyyyy])" );
++
++ std::ostringstream ssz;
++ ssz << "[" << std::right << std::setfill('z') << std::setw(20) << std::quoted(R"(PQ "RS" TU)") << "]";
++ VERIFY( ssz.str() == R"([zzzzzz"PQ \"RS\" TU"])" );
++}
++
++int
++main()
++{
++ test01();
++ return 0;
++}
Index: libstdc++-v3/testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc
===================================================================
--- a/src/libstdc++-v3/testsuite/28_regex/algorithms/regex_match/ecma/char/quoted_char.cc (.../tags/gcc_4_9_0_release)
@@ -3118,6 +3327,52 @@ Index: gcc/tree-ssa-loop-im.c
set_immediate_dominator (CDI_DOMINATORS, then_bb, new_bb);
+Index: gcc/tree-ssa-tail-merge.c
+===================================================================
+--- a/src/gcc/tree-ssa-tail-merge.c (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/tree-ssa-tail-merge.c (.../branches/gcc-4_9-branch)
+@@ -481,7 +481,11 @@
+ hashval = iterative_hash_hashval_t
+ ((hashval_t) gimple_call_internal_fn (stmt), hashval);
+ else
+- hashval = iterative_hash_expr (gimple_call_fn (stmt), hashval);
++ {
++ hashval = iterative_hash_expr (gimple_call_fn (stmt), hashval);
++ if (gimple_call_chain (stmt))
++ hashval = iterative_hash_expr (gimple_call_chain (stmt), hashval);
++ }
+ for (i = 0; i < gimple_call_num_args (stmt); i++)
+ {
+ arg = gimple_call_arg (stmt, i);
+@@ -1121,18 +1125,23 @@
+ switch (gimple_code (s1))
+ {
+ case GIMPLE_CALL:
+- if (gimple_call_num_args (s1) != gimple_call_num_args (s2))
+- return false;
+ if (!gimple_call_same_target_p (s1, s2))
+ return false;
+
++ t1 = gimple_call_chain (s1);
++ t2 = gimple_call_chain (s2);
++ if (!gimple_operand_equal_value_p (t1, t2))
++ return false;
++
++ if (gimple_call_num_args (s1) != gimple_call_num_args (s2))
++ return false;
++
+ for (i = 0; i < gimple_call_num_args (s1); ++i)
+ {
+ t1 = gimple_call_arg (s1, i);
+ t2 = gimple_call_arg (s2, i);
+- if (gimple_operand_equal_value_p (t1, t2))
+- continue;
+- return false;
++ if (!gimple_operand_equal_value_p (t1, t2))
++ return false;
+ }
+
+ lhs1 = gimple_get_lhs (s1);
Index: gcc/c-family/c-opts.c
===================================================================
--- a/src/gcc/c-family/c-opts.c (.../tags/gcc_4_9_0_release)
@@ -3418,7 +3673,7 @@ Index: gcc/DATESTAMP
+++ b/src/gcc/DATESTAMP (.../branches/gcc-4_9-branch)
@@ -1 +1 @@
-20140422
-+20140607
++20140608
Index: gcc/tree-tailcall.c
===================================================================
--- a/src/gcc/tree-tailcall.c (.../tags/gcc_4_9_0_release)
@@ -4168,7 +4423,14 @@ Index: gcc/ChangeLog
===================================================================
--- a/src/gcc/ChangeLog (.../tags/gcc_4_9_0_release)
+++ b/src/gcc/ChangeLog (.../branches/gcc-4_9-branch)
-@@ -1,3 +1,1000 @@
+@@ -1,3 +1,1007 @@
++2014-06-07 Eric Botcazou <ebotcazou@adacore.com>
++
++ * tree-ssa-tail-merge.c (same_succ_hash): Hash the static chain of a
++ call statement, if any.
++ (gimple_equal_p) <GIMPLE_CALL>: Compare the static chain of the call
++ statements, if any. Tidy up.
++
+2014-06-06 Michael Meissner <meissner@linux.vnet.ibm.com>
+
+ Back port from trunk
@@ -5169,7 +5431,7 @@ Index: gcc/ChangeLog
2014-04-22 Release Manager
* GCC 4.9.0 released.
-@@ -59,8 +1061,7 @@
+@@ -59,8 +1068,7 @@
2014-04-11 Tobias Burnus <burnus@net-b.de>
PR other/59055
@@ -5179,7 +5441,7 @@ Index: gcc/ChangeLog
* doc/gcc.texi (Service): Update description in the @menu
* doc/invoke.texi (Option Summary): Remove misplaced and
duplicated @menu.
-@@ -86,15 +1087,14 @@
+@@ -86,15 +1094,14 @@
2014-04-11 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/60663
@@ -5198,7 +5460,7 @@ Index: gcc/ChangeLog
2014-04-10 Ramana Radhakrishnan <ramana.radhakrishnan@arm.com>
-@@ -212,9 +1212,10 @@
+@@ -212,9 +1219,10 @@
2014-04-05 Pitchumani Sivanupandi <Pitchumani.S@atmel.com>
@@ -5212,7 +5474,7 @@ Index: gcc/ChangeLog
* config/avr/avr-c.c (avr_cpu_cpp_builtins): use dev_attribute to check
errata_skip. Add __AVR_ISA_RMW__ builtin macro if RMW ISA available.
* config/avr/avr-devices.c (avr_mcu_types): Update AVR_MCU macro for
-@@ -282,21 +1283,21 @@
+@@ -282,21 +1290,21 @@
2014-04-04 Martin Jambor <mjambor@suse.cz>
PR ipa/60640
@@ -5245,7 +5507,7 @@ Index: gcc/ChangeLog
moved setting of a lot of flags to set_new_clone_decl_and_node_flags.
2014-04-04 Jeff Law <law@redhat.com>
-@@ -334,8 +1335,8 @@
+@@ -334,8 +1342,8 @@
PR tree-optimization/60505
* tree-vectorizer.h (struct _stmt_vec_info): Add th field as the
@@ -5256,7 +5518,7 @@ Index: gcc/ChangeLog
* tree-vect-loop.c (new_loop_vec_info):
Initialize LOOP_VINFO_COST_MODEL_THRESHOLD.
* tree-vect-loop.c (vect_analyze_loop_operations):
-@@ -347,8 +1348,7 @@
+@@ -347,8 +1355,7 @@
2014-04-03 Richard Biener <rguenther@suse.de>
@@ -5266,7 +5528,7 @@ Index: gcc/ChangeLog
(streamer_tree_cache_create): Adjust.
* tree-streamer.c (streamer_tree_cache_add_to_node_array): Adjust
to allow optional nodes array.
-@@ -359,8 +1359,7 @@
+@@ -359,8 +1366,7 @@
* lto-streamer-out.c (create_output_block): Avoid maintaining
the node array in the writer cache.
(DFS_write_tree): Remove assertion.
@@ -5276,7 +5538,7 @@ Index: gcc/ChangeLog
* lto-streamer-in.c (lto_data_in_create): Adjust for
streamer_tree_cache_create prototype change.
-@@ -381,24 +1380,6 @@
+@@ -381,24 +1387,6 @@
(Weffc++): Remove Scott's numbering, merge lists and reference
Wnon-virtual-dtor.
@@ -5301,7 +5563,7 @@ Index: gcc/ChangeLog
2014-04-03 Nick Clifton <nickc@redhat.com>
* config/rl78/rl78-expand.md (movqi): Handle (SUBREG (SYMBOL_REF))
-@@ -414,8 +1395,8 @@
+@@ -414,8 +1402,8 @@
2014-04-02 Jan Hubicka <hubicka@ucw.cz>
PR ipa/60659
@@ -5312,7 +5574,7 @@ Index: gcc/ChangeLog
(possible_polymorphic_call_targets): For inconsistent contexts
return empty complete list.
-@@ -519,8 +1500,7 @@
+@@ -519,8 +1507,7 @@
2014-04-01 Richard Biener <rguenther@suse.de>
@@ -6765,6 +7027,29 @@ Index: gcc/testsuite/lib/target-supports.exp
"named_sections" { return 1 }
"gc_sections" { return 1 }
"cxa_atexit" { return 1 }
+Index: gcc/testsuite/gfortran.dg/arrayio_14.f90
+===================================================================
+--- a/src/gcc/testsuite/gfortran.dg/arrayio_14.f90 (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/testsuite/gfortran.dg/arrayio_14.f90 (.../branches/gcc-4_9-branch)
+@@ -0,0 +1,18 @@
++! { dg-do run }
++! PR61173.f90 Bogus END condition
++module bd
++ character(len=25, kind=1), dimension(:), allocatable, save :: source
++ contains
++ subroutine init_data
++ allocate(source(2))
++ source=[" 1 1 1 ", " 4 4 4 "]
++ end subroutine init_data
++end module bd
++program read_internal
++ use bd
++ integer :: x(6),i
++
++ call init_data
++ read(source,*) (x(i), i=1,6)
++ if (any(x/=[1,1,1,4,4,4])) call abort
++end program read_internal
Index: gcc/testsuite/gfortran.dg/graphite/pr59817.f
===================================================================
--- a/src/gcc/testsuite/gfortran.dg/graphite/pr59817.f (.../tags/gcc_4_9_0_release)
@@ -6961,6 +7246,20 @@ Index: gcc/testsuite/gcc.c-torture/execute/pr60960.c
+ __builtin_abort ();
+ return 0;
+}
+Index: gcc/testsuite/gnat.dg/opt38.adb
+===================================================================
+--- a/src/gcc/testsuite/gnat.dg/opt38.adb (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/testsuite/gnat.dg/opt38.adb (.../branches/gcc-4_9-branch)
+@@ -0,0 +1,9 @@
++-- { dg-do run }
++-- { dg-options "-O2 -gnatn" }
++
++with Opt38_Pkg; use Opt38_Pkg;
++
++procedure Opt38 is
++begin
++ Test (-1);
++end;
Index: gcc/testsuite/gnat.dg/overflow_fixed.adb
===================================================================
--- a/src/gcc/testsuite/gnat.dg/overflow_fixed.adb (.../tags/gcc_4_9_0_release)
@@ -6985,6 +7284,54 @@ Index: gcc/testsuite/gnat.dg/overflow_fixed.adb
+begin
+ Fixed_To_Eight (-0.5);
+end;
+Index: gcc/testsuite/gnat.dg/opt38_pkg.adb
+===================================================================
+--- a/src/gcc/testsuite/gnat.dg/opt38_pkg.adb (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/testsuite/gnat.dg/opt38_pkg.adb (.../branches/gcc-4_9-branch)
+@@ -0,0 +1,33 @@
++package body Opt38_Pkg is
++
++ procedure Proc (I : Integer);
++ pragma Inline (Proc);
++
++ procedure Proc (I : Integer) is
++
++ procedure Inner;
++ pragma No_Inline (Inner);
++
++ procedure Inner is
++ begin
++ if I /= 110 then
++ raise Program_Error;
++ end if;
++ end;
++
++ begin
++ if I > 0 then
++ Inner;
++ end if;
++ end;
++
++ procedure Test (I : Integer) is
++ begin
++ if I > -1 then
++ Proc (I);
++ else
++ Proc (I + 111);
++ end if;
++ end;
++
++end Opt38_Pkg;
+Index: gcc/testsuite/gnat.dg/opt38_pkg.ads
+===================================================================
+--- a/src/gcc/testsuite/gnat.dg/opt38_pkg.ads (.../tags/gcc_4_9_0_release)
++++ b/src/gcc/testsuite/gnat.dg/opt38_pkg.ads (.../branches/gcc-4_9-branch)
+@@ -0,0 +1,5 @@
++package Opt38_Pkg is
++
++ procedure Test (I : Integer);
++
++end Opt38_Pkg;
Index: gcc/testsuite/gnat.dg/enum3.adb
===================================================================
--- a/src/gcc/testsuite/gnat.dg/enum3.adb (.../tags/gcc_4_9_0_release)
@@ -7949,7 +8296,18 @@ Index: gcc/testsuite/ChangeLog
===================================================================
--- a/src/gcc/testsuite/ChangeLog (.../tags/gcc_4_9_0_release)
+++ b/src/gcc/testsuite/ChangeLog (.../branches/gcc-4_9-branch)
-@@ -1,3 +1,448 @@
+@@ -1,3 +1,459 @@
++2014-06-07 Jerry DeLisle <jvdelisle@gcc.gnu>
++
++ Backport from trunk.
++ PR libfortran/61173
++ * gfortran.dg/arrayio_14.f90: New test.
++
++2014-06-07 Eric Botcazou <ebotcazou@adacore.com>
++
++ * gnat.dg/opt38.adb: New test.
++ * gnat.dg/opt38_pkg.ad[sb]: New helper.
++
+2014-06-04 Richard Biener <rguenther@suse.de>
+
+ PR tree-optimization/61383
@@ -8398,7 +8756,7 @@ Index: gcc/testsuite/ChangeLog
2014-04-22 Release Manager
* GCC 4.9.0 released.
-@@ -51,7 +496,7 @@
+@@ -51,7 +507,7 @@
2014-04-12 Jerry DeLisle <jvdelisle@gcc.gnu>
PR libfortran/60810
@@ -8407,7 +8765,7 @@ Index: gcc/testsuite/ChangeLog
2014-04-11 Steve Ellcey <sellcey@mips.com>
Jakub Jelinek <jakub@redhat.com>
-@@ -135,8 +580,7 @@
+@@ -135,8 +591,7 @@
2014-04-08 Jason Merrill <jason@redhat.com>
@@ -8417,7 +8775,7 @@ Index: gcc/testsuite/ChangeLog
2014-04-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
-@@ -256,10 +700,10 @@
+@@ -256,10 +711,10 @@
2014-04-04 Martin Jambor <mjambor@suse.cz>
PR ipa/60640
@@ -8432,7 +8790,7 @@ Index: gcc/testsuite/ChangeLog
2014-04-04 Jeff Law <law@redhat.com>
-@@ -371,7 +815,7 @@
+@@ -371,7 +826,7 @@
2014-04-01 Fabien ChĂȘne <fabien@gcc.gnu.org>
@@ -8441,7 +8799,7 @@ Index: gcc/testsuite/ChangeLog
* g++.dg/init/ctor4-1.C: New.
* g++.dg/cpp0x/defaulted2.C: Adjust.
-@@ -459,8 +903,8 @@
+@@ -459,8 +914,8 @@
2014-03-27 Jeff Law <law@redhat.com>
@@ -8452,7 +8810,7 @@ Index: gcc/testsuite/ChangeLog
2014-03-28 Adam Butcher <adam@jessamine.co.uk>
-@@ -493,14 +937,13 @@
+@@ -493,14 +948,13 @@
2014-03-28 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
@@ -8470,7 +8828,7 @@ Index: gcc/testsuite/ChangeLog
of second source operand.
* gcc.target/i386/avx512f-vshuff64x2-2.c: Ditto.
* gcc.target/i386/avx512f-vshufi32x4-2.c: Ditto.
-@@ -635,8 +1078,8 @@
+@@ -635,8 +1089,8 @@
2014-03-24 Marek Polacek <polacek@redhat.com>
@@ -8481,7 +8839,7 @@ Index: gcc/testsuite/ChangeLog
* c-c++-common/ubsan/overflow-1.c: Check for unwanted output.
* c-c++-common/ubsan/overflow-add-1.c: Likewise.
* c-c++-common/ubsan/overflow-mul-1.c: Likewise.
-@@ -721,8 +1164,7 @@
+@@ -721,8 +1175,7 @@
2014-03-21 Tobias Burnus <burnus@net-b.de>
PR fortran/60599
@@ -8491,7 +8849,7 @@ Index: gcc/testsuite/ChangeLog
2014-03-20 Jakub Jelinek <jakub@redhat.com>
-@@ -1540,8 +1982,7 @@
+@@ -1540,8 +1993,7 @@
2014-02-19 Paul Pluzhnikov <ppluzhnikov@google.com>
@@ -8501,7 +8859,7 @@ Index: gcc/testsuite/ChangeLog
2014-02-19 Jakub Jelinek <jakub@redhat.com>
-@@ -1850,8 +2291,7 @@
+@@ -1850,8 +2302,7 @@
2014-02-10 Jakub Jelinek <jakub@redhat.com>
@@ -8511,7 +8869,7 @@ Index: gcc/testsuite/ChangeLog
2014-02-09 Paul Thomas <pault@gcc.gnu.org>
-@@ -3098,8 +3538,8 @@
+@@ -3098,8 +3549,8 @@
* gfortran.dg/vect/fast-math-mgrid-resid.f: Change
-fdump-tree-optimized to -fdump-tree-pcom-details in dg-options and
cleanup-tree-dump from optimized to pcom. Remove scan-tree-dump-times
@@ -28133,7 +28491,14 @@ Index: libgfortran/ChangeLog
===================================================================
--- a/src/libgfortran/ChangeLog (.../tags/gcc_4_9_0_release)
+++ b/src/libgfortran/ChangeLog (.../branches/gcc-4_9-branch)
-@@ -1,3 +1,28 @@
+@@ -1,3 +1,35 @@
++2014-06-07 Jerry DeLisle <jvdelisle@gcc.gnu>
++
++ Backport from trunk.
++ PR libfortran/61173
++ * io/list_read.c (eat_spaces): If the next character pointed to
++ is a space, don't seek, must be at the end.
++
+2014-05-26 Janne Blomqvist <jb@gcc.gnu.org>
+
+ Backport from mainline
@@ -28166,7 +28531,52 @@ Index: libgfortran/io/list_read.c
===================================================================
--- a/src/libgfortran/io/list_read.c (.../tags/gcc_4_9_0_release)
+++ b/src/libgfortran/io/list_read.c (.../branches/gcc-4_9-branch)
-@@ -1923,21 +1923,10 @@
+@@ -271,7 +271,7 @@
+ if (is_array_io (dtp))
+ {
+ gfc_offset offset = stell (dtp->u.p.current_unit->s);
+- gfc_offset limit = dtp->u.p.current_unit->bytes_left;
++ gfc_offset limit = offset + dtp->u.p.current_unit->bytes_left;
+
+ if (dtp->common.unit) /* kind=4 */
+ {
+@@ -283,13 +283,15 @@
+ offset += (sizeof (gfc_char4_t));
+ dtp->u.p.current_unit->bytes_left--;
+ }
+- while (offset < limit && (cc == (gfc_char4_t)' '
+- || cc == (gfc_char4_t)'\t'));
++ while (offset < limit && cc == (gfc_char4_t)' ');
+ /* Back up, seek ahead, and fall through to complete the
+ process so that END conditions are handled correctly. */
+ dtp->u.p.current_unit->bytes_left++;
+- sseek (dtp->u.p.current_unit->s,
+- offset-(sizeof (gfc_char4_t)), SEEK_SET);
++
++ cc = dtp->internal_unit[offset];
++ if (cc != (gfc_char4_t)' ')
++ sseek (dtp->u.p.current_unit->s,
++ offset-(sizeof (gfc_char4_t)), SEEK_SET);
+ }
+ else
+ {
+@@ -298,11 +300,13 @@
+ c = dtp->internal_unit[offset++];
+ dtp->u.p.current_unit->bytes_left--;
+ }
+- while (offset < limit && (c == ' ' || c == '\t'));
++ while (offset < limit && c == ' ');
+ /* Back up, seek ahead, and fall through to complete the
+ process so that END conditions are handled correctly. */
+ dtp->u.p.current_unit->bytes_left++;
+- sseek (dtp->u.p.current_unit->s, offset-1, SEEK_SET);
++
++ if (dtp->internal_unit[offset] != ' ')
++ sseek (dtp->u.p.current_unit->s, offset - 1, SEEK_SET);
+ }
+ }
+ /* Now skip spaces, EOF and EOL are handled in next_char. */
+@@ -1923,21 +1927,10 @@
}
if (is_separator (c))
{
@@ -28190,7 +28600,7 @@ Index: libgfortran/io/list_read.c
/* Set end-of-line flag. */
if (c == '\n' || c == '\r')
{
-@@ -1951,7 +1940,6 @@
+@@ -1951,7 +1944,6 @@
else
goto cleanup;
}