2010-05-11 21:36:01 +00:00

61 lines
1.6 KiB
C++

//===----------------------------------------------------------------------===//
//
// The LLVM Compiler Infrastructure
//
// This file is distributed under the University of Illinois Open Source
// License. See LICENSE.TXT for details.
//
//===----------------------------------------------------------------------===//
// <locale>
// template <class charT> class numpunct_byname;
// string grouping() const;
#include <locale>
#include <cassert>
int main()
{
{
std::locale l("C");
{
typedef char C;
const std::numpunct<C>& np = std::use_facet<std::numpunct<C> >(l);
assert(np.grouping() == "");
}
{
typedef wchar_t C;
const std::numpunct<C>& np = std::use_facet<std::numpunct<C> >(l);
assert(np.grouping() == "");
}
}
{
std::locale l("en_US");
{
typedef char C;
const std::numpunct<C>& np = std::use_facet<std::numpunct<C> >(l);
assert(np.grouping() == "\3\3");
}
{
typedef wchar_t C;
const std::numpunct<C>& np = std::use_facet<std::numpunct<C> >(l);
assert(np.grouping() == "\3\3");
}
}
{
std::locale l("fr_FR");
{
typedef char C;
const std::numpunct<C>& np = std::use_facet<std::numpunct<C> >(l);
assert(np.grouping() == "\x7F");
}
{
typedef wchar_t C;
const std::numpunct<C>& np = std::use_facet<std::numpunct<C> >(l);
assert(np.grouping() == "\x7F");
}
}
}