re PR libstdc++/48362 (pretty printer fails for zero-size std::tuple<>)

PR libstdc++/48362
	* testsuite/libstdc++-prettyprinters/48362.cc: New.

From-SVN: r182632
This commit is contained in:
Jonathan Wakely 2011-12-22 18:58:15 +00:00 committed by Jonathan Wakely
parent 1f653d0bb0
commit 7bde813394
2 changed files with 41 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2011-12-22 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/48362
* testsuite/libstdc++-prettyprinters/48362.cc: New.
2011-12-22 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/48362

View File

@ -0,0 +1,36 @@
// { dg-do run }
// { dg-options "-g -std=gnu++11 -O0" }
// Copyright (C) 2011 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/>.
#include <tuple>
#include <string>
int
main()
{
std::tuple<> t1;
// { dg-final { note-test t1 {empty std::tuple} } }
std::tuple<std::string, int, std::tuple<>> t2{ "Johnny", 5, {} };
// { dg-final { note-test t2 {std::tuple containing = {[1] = "Johnny", [2] = 5, [3] = {<std::tuple<>> = empty std::tuple, <No data fields>}}} } }
return 0; // Mark SPOT
}
// { dg-final { gdb-test SPOT } }