1 // Iostreams base classes -*- C++ -*- 2 3 // Copyright (C) 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2005, 4 // 2009, 2010 5 // Free Software Foundation, Inc. 6 // 7 // This file is part of the GNU ISO C++ Library. This library is free 8 // software; you can redistribute it and/or modify it under the 9 // terms of the GNU General Public License as published by the 10 // Free Software Foundation; either version 3, or (at your option) 11 // any later version. 12 13 // This library is distributed in the hope that it will be useful, 14 // but WITHOUT ANY WARRANTY; without even the implied warranty of 15 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 // GNU General Public License for more details. 17 18 // Under Section 7 of GPL version 3, you are granted additional 19 // permissions described in the GCC Runtime Library Exception, version 20 // 3.1, as published by the Free Software Foundation. 21 22 // You should have received a copy of the GNU General Public License and 23 // a copy of the GCC Runtime Library Exception along with this program; 24 // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see 25 // <http://www.gnu.org/licenses/>. 26 27 // 28 // ISO C++ 14882: 27.4 Iostreams base classes 29 // 30 31 #include <ios> 32 #include <locale> 33 34 namespace std _GLIBCXX_VISIBILITY(default) 35 { 36 _GLIBCXX_BEGIN_NAMESPACE_VERSION 37 38 // Called only by basic_ios<>::init. 39 void 40 ios_base::_M_init() throw() 41 { 42 // NB: May be called more than once 43 _M_precision = 6; 44 _M_width = 0; 45 _M_flags = skipws | dec; 46 _M_ios_locale = locale(); 47 } 48 49 // 27.4.2.3 ios_base locale functions 50 locale 51 ios_base::imbue(const locale& __loc) throw() 52 { 53 locale __old = _M_ios_locale; 54 _M_ios_locale = __loc; 55 _M_call_callbacks(imbue_event); 56 return __old; 57 } 58 59 _GLIBCXX_END_NAMESPACE_VERSION 60 } // namespace 61