head	1.4;
access;
symbols
	RELENG_8_4:1.4.0.2
	RELENG_9_1_0_RELEASE:1.1.1.5.22.1
	RELENG_9_1:1.1.1.5.22.1.0.2
	RELENG_9_1_BP:1.1.1.5.22.1
	RELENG_8_3_0_RELEASE:1.1.1.5.10.1
	RELENG_8_3:1.1.1.5.10.1.0.2
	RELENG_8_3_BP:1.1.1.5.10.1
	RELENG_9_0_0_RELEASE:1.1.1.5
	RELENG_9_0:1.1.1.5.0.24
	RELENG_9_0_BP:1.1.1.5
	RELENG_9:1.1.1.5.0.22
	RELENG_9_BP:1.1.1.5
	RELENG_7_4_0_RELEASE:1.1.1.5
	RELENG_8_2_0_RELEASE:1.1.1.5
	RELENG_7_4:1.1.1.5.0.20
	RELENG_7_4_BP:1.1.1.5
	RELENG_8_2:1.1.1.5.0.18
	RELENG_8_2_BP:1.1.1.5
	RELENG_8_1_0_RELEASE:1.1.1.5
	RELENG_8_1:1.1.1.5.0.16
	RELENG_8_1_BP:1.1.1.5
	RELENG_7_3_0_RELEASE:1.1.1.5
	RELENG_7_3:1.1.1.5.0.14
	RELENG_7_3_BP:1.1.1.5
	RELENG_8_0_0_RELEASE:1.1.1.5
	RELENG_8_0:1.1.1.5.0.12
	RELENG_8_0_BP:1.1.1.5
	RELENG_8:1.1.1.5.0.10
	RELENG_8_BP:1.1.1.5
	RELENG_7_2_0_RELEASE:1.1.1.5
	RELENG_7_2:1.1.1.5.0.8
	RELENG_7_2_BP:1.1.1.5
	RELENG_7_1_0_RELEASE:1.1.1.5
	RELENG_6_4_0_RELEASE:1.1.1.3
	RELENG_7_1:1.1.1.5.0.6
	RELENG_7_1_BP:1.1.1.5
	RELENG_6_4:1.1.1.3.0.20
	RELENG_6_4_BP:1.1.1.3
	RELENG_7_0_0_RELEASE:1.1.1.5
	RELENG_6_3_0_RELEASE:1.1.1.3
	RELENG_7_0:1.1.1.5.0.4
	RELENG_7_0_BP:1.1.1.5
	RELENG_6_3:1.1.1.3.0.18
	RELENG_6_3_BP:1.1.1.3
	RELENG_7:1.1.1.5.0.2
	RELENG_7_BP:1.1.1.5
	gcc_4_2_1_20070718_SVN126787:1.1.1.5
	gcc_4_2_0_20070514_SVN124707:1.1.1.4
	RELENG_6_2_0_RELEASE:1.1.1.3
	RELENG_6_2:1.1.1.3.0.16
	RELENG_6_2_BP:1.1.1.3
	gcc_3_4_6_20060825_SVN116475:1.1.1.3
	RELENG_5_5_0_RELEASE:1.1.1.3
	RELENG_5_5:1.1.1.3.0.14
	RELENG_5_5_BP:1.1.1.3
	RELENG_6_1_0_RELEASE:1.1.1.3
	RELENG_6_1:1.1.1.3.0.12
	RELENG_6_1_BP:1.1.1.3
	RELENG_6_0_0_RELEASE:1.1.1.3
	RELENG_6_0:1.1.1.3.0.10
	RELENG_6_0_BP:1.1.1.3
	RELENG_6:1.1.1.3.0.8
	RELENG_6_BP:1.1.1.3
	gcc_3_4_4_20050518:1.1.1.3
	RELENG_5_4_0_RELEASE:1.1.1.3
	RELENG_5_4:1.1.1.3.0.6
	RELENG_5_4_BP:1.1.1.3
	RELENG_5_3_0_RELEASE:1.1.1.3
	RELENG_5_3:1.1.1.3.0.4
	RELENG_5_3_BP:1.1.1.3
	RELENG_5:1.1.1.3.0.2
	RELENG_5_BP:1.1.1.3
	gcc_3_4_2_20040728:1.1.1.3
	RELENG_5_2_1_RELEASE:1.1.1.2
	RELENG_5_2_0_RELEASE:1.1.1.2
	RELENG_5_2:1.1.1.2.0.2
	RELENG_5_2_BP:1.1.1.2
	gcc_3_3_3_20031106:1.1.1.2
	gcc_3_3_1:1.1.1.2
	gcc_3_3_1_20030711:1.1.1.2
	RELENG_5_1_0_RELEASE:1.1.1.1
	RELENG_5_1:1.1.1.1.0.4
	RELENG_5_1_BP:1.1.1.1
	gcc_3_2_2_20030205:1.1.1.1
	RELENG_5_0_0_RELEASE:1.1.1.1
	RELENG_5_0:1.1.1.1.0.2
	RELENG_5_0_BP:1.1.1.1
	gcc_3_2_1:1.1.1.1
	BEFORE_GCC_3_2_1:1.1.1.1
	gcc_3_2_anoncvs_20021009:1.1.1.1
	gcc_3_2_anoncvs_20020916:1.1.1.1
	gcc_3_2_anoncvs_20020901:1.1.1.1
	gcc_3_1_anoncvs_20020509:1.1.1.1
	FSF:1.1.1;
locks; strict;
comment	@# @;


1.4
date	2012.03.30.12.48.36;	author theraven;	state Exp;
branches
	1.4.2.1;
next	1.3;

1.3
date	2012.03.23.20.10.56;	author theraven;	state Exp;
branches;
next	1.2;

1.2
date	2011.12.21.16.36.07;	author pfg;	state Exp;
branches;
next	1.1;

1.1
date	2002.05.28.16.16.03;	author obrien;	state Exp;
branches
	1.1.1.1;
next	;

1.4.2.1
date	2012.03.30.12.48.36;	author svnexp;	state dead;
branches;
next	1.4.2.2;

1.4.2.2
date	2013.03.28.13.01.38;	author svnexp;	state Exp;
branches;
next	;

1.1.1.1
date	2002.05.28.16.16.03;	author obrien;	state Exp;
branches;
next	1.1.1.2;

1.1.1.2
date	2003.07.11.03.42.04;	author kan;	state Exp;
branches;
next	1.1.1.3;

1.1.1.3
date	2004.07.28.03.12.05;	author kan;	state Exp;
branches;
next	1.1.1.4;

1.1.1.4
date	2007.05.19.01.23.43;	author kan;	state Exp;
branches;
next	1.1.1.5;

1.1.1.5
date	2007.08.14.02.49.10;	author kan;	state Exp;
branches
	1.1.1.5.10.1
	1.1.1.5.22.1;
next	;

1.1.1.5.10.1
date	2012.02.03.21.30.31;	author pfg;	state Exp;
branches;
next	;

1.1.1.5.22.1
date	2012.01.05.01.48.25;	author pfg;	state Exp;
branches;
next	;


desc
@@


1.4
log
@SVN rev 233699 on 2012-03-30 12:48:36Z by theraven

Undo the earlier revert of the ABI change in libsupc++.  On further discussion,
posting an errata notice with 9.1 is the less painful solution.

Approved by:	dim (mentor)
@
text
@// RTTI support for -*- C++ -*-
// Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
// 2003, 2004, 2005, 2006, 2007
// Free Software Foundation
//
// This file is part of GCC.
//
// GCC 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 2, or (at your option)
// any later version.
// 
// GCC 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 GCC; see the file COPYING.  If not, write to
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
// Boston, MA 02110-1301, USA.

// As a special exception, you may use this file as part of a free software
// library without restriction.  Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License.  This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.

/** @@file typeinfo
 *  This is a Standard C++ Library header.
 */

#ifndef _TYPEINFO
#define _TYPEINFO

#include <exception>

#pragma GCC visibility push(default)

extern "C++" {

namespace __cxxabiv1
{
  class __class_type_info;
} // namespace __cxxabiv1

#ifndef __GXX_MERGED_TYPEINFO_NAMES
  #if !__GXX_WEAK__
    // If weak symbols are not supported, typeinfo names are not merged.
    #define __GXX_MERGED_TYPEINFO_NAMES 0
  #else
    // On platforms that support weak symbols, typeinfo names are merged.
    #define __GXX_MERGED_TYPEINFO_NAMES 1
  #endif
#endif

namespace std 
{
  /**
   *  @@brief  Part of RTTI.
   *
   *  The @@c type_info class describes type information generated by
   *  an implementation.
  */
  class type_info 
  {
  public:
    /** Destructor first. Being the first non-inline virtual function, this
     *  controls in which translation unit the vtable is emitted. The
     *  compiler makes use of that information to know where to emit
     *  the runtime-mandated type_info structures in the new-abi.  */
    virtual ~type_info();

    /** Returns an @@e implementation-defined byte string; this is not
     *  portable between compilers!  */
    const char* name() const
    { return __name; }

#if !__GXX_MERGED_TYPEINFO_NAMES
    bool before(const type_info& __arg) const;

    // In old abi, or when weak symbols are not supported, there can
    // be multiple instances of a type_info object for one
    // type. Uniqueness must use the _name value, not object address.
    bool operator==(const type_info& __arg) const;
#else
    /** Returns true if @@c *this precedes @@c __arg in the implementation's
     *  collation order.  */
    // In new abi we can rely on type_info's NTBS being unique,
    // and therefore address comparisons are sufficient.
    bool before(const type_info& __arg) const
    { return __name < __arg.__name; }

    bool operator==(const type_info& __arg) const
    { return __name == __arg.__name; }
#endif
    bool operator!=(const type_info& __arg) const
    { return !operator==(__arg); }

    // Return true if this is a pointer type of some kind
    virtual bool __is_pointer_p() const;

    // Return true if this is a function type
    virtual bool __is_function_p() const;

    // Try and catch a thrown type. Store an adjusted pointer to the
    // caught type in THR_OBJ. If THR_TYPE is not a pointer type, then
    // THR_OBJ points to the thrown object. If THR_TYPE is a pointer
    // type, then THR_OBJ is the pointer itself. OUTER indicates the
    // number of outer pointers, and whether they were const
    // qualified.
    virtual bool __do_catch(const type_info *__thr_type, void **__thr_obj,
			    unsigned __outer) const;

    // Internally used during catch matching
    virtual bool __do_upcast(const __cxxabiv1::__class_type_info *__target,
			     void **__obj_ptr) const;

  protected:
    const char *__name;
    
    explicit type_info(const char *__n): __name(__n) { }
    
  private:
    /// Assigning type_info is not supported.
    type_info& operator=(const type_info&);
    type_info(const type_info&);
  };

  /**
   *  @@brief  Thrown during incorrect typecasting.
   *
   *  If you attempt an invalid @@c dynamic_cast expression, an instance of
   *  this class (or something derived from this class) is thrown.  */
  class bad_cast : public exception 
  {
  public:
    bad_cast() throw() { }

    // This declaration is not useless:
    // http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118
    virtual ~bad_cast() throw();

    // See comment in eh_exception.cc.
    virtual const char* what() const throw();
  };
  
  /** If you use a NULL pointer in a @@c typeid expression, this is thrown.  */
  class bad_typeid : public exception 
  {
  public:
    bad_typeid () throw() { }

    // This declaration is not useless:
    // http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118
    virtual ~bad_typeid() throw();

    // See comment in eh_exception.cc.
    virtual const char* what() const throw();
  };
} // namespace std

#pragma GCC visibility pop

} // extern "C++"
#endif
@


1.4.2.1
log
@file typeinfo was added on branch RELENG_8_4 on 2013-03-28 13:01:38 +0000
@
text
@d1 169
@


1.4.2.2
log
@## SVN ## Exported commit - http://svnweb.freebsd.org/changeset/base/248810
## SVN ## CVS IS DEPRECATED: http://wiki.freebsd.org/CvsIsDeprecated
@
text
@a0 169
// RTTI support for -*- C++ -*-
// Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
// 2003, 2004, 2005, 2006, 2007
// Free Software Foundation
//
// This file is part of GCC.
//
// GCC 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 2, or (at your option)
// any later version.
// 
// GCC 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 GCC; see the file COPYING.  If not, write to
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
// Boston, MA 02110-1301, USA.

// As a special exception, you may use this file as part of a free software
// library without restriction.  Specifically, if other files instantiate
// templates or use macros or inline functions from this file, or you compile
// this file and link it with other files to produce an executable, this
// file does not by itself cause the resulting executable to be covered by
// the GNU General Public License.  This exception does not however
// invalidate any other reasons why the executable file might be covered by
// the GNU General Public License.

/** @@file typeinfo
 *  This is a Standard C++ Library header.
 */

#ifndef _TYPEINFO
#define _TYPEINFO

#include <exception>

#pragma GCC visibility push(default)

extern "C++" {

namespace __cxxabiv1
{
  class __class_type_info;
} // namespace __cxxabiv1

#ifndef __GXX_MERGED_TYPEINFO_NAMES
  #if !__GXX_WEAK__
    // If weak symbols are not supported, typeinfo names are not merged.
    #define __GXX_MERGED_TYPEINFO_NAMES 0
  #else
    // On platforms that support weak symbols, typeinfo names are merged.
    #define __GXX_MERGED_TYPEINFO_NAMES 1
  #endif
#endif

namespace std 
{
  /**
   *  @@brief  Part of RTTI.
   *
   *  The @@c type_info class describes type information generated by
   *  an implementation.
  */
  class type_info 
  {
  public:
    /** Destructor first. Being the first non-inline virtual function, this
     *  controls in which translation unit the vtable is emitted. The
     *  compiler makes use of that information to know where to emit
     *  the runtime-mandated type_info structures in the new-abi.  */
    virtual ~type_info();

    /** Returns an @@e implementation-defined byte string; this is not
     *  portable between compilers!  */
    const char* name() const
    { return __name; }

#if !__GXX_MERGED_TYPEINFO_NAMES
    bool before(const type_info& __arg) const;

    // In old abi, or when weak symbols are not supported, there can
    // be multiple instances of a type_info object for one
    // type. Uniqueness must use the _name value, not object address.
    bool operator==(const type_info& __arg) const;
#else
    /** Returns true if @@c *this precedes @@c __arg in the implementation's
     *  collation order.  */
    // In new abi we can rely on type_info's NTBS being unique,
    // and therefore address comparisons are sufficient.
    bool before(const type_info& __arg) const
    { return __name < __arg.__name; }

    bool operator==(const type_info& __arg) const
    { return __name == __arg.__name; }
#endif
    bool operator!=(const type_info& __arg) const
    { return !operator==(__arg); }

    // Return true if this is a pointer type of some kind
    virtual bool __is_pointer_p() const;

    // Return true if this is a function type
    virtual bool __is_function_p() const;

    // Try and catch a thrown type. Store an adjusted pointer to the
    // caught type in THR_OBJ. If THR_TYPE is not a pointer type, then
    // THR_OBJ points to the thrown object. If THR_TYPE is a pointer
    // type, then THR_OBJ is the pointer itself. OUTER indicates the
    // number of outer pointers, and whether they were const
    // qualified.
    virtual bool __do_catch(const type_info *__thr_type, void **__thr_obj,
			    unsigned __outer) const;

    // Internally used during catch matching
    virtual bool __do_upcast(const __cxxabiv1::__class_type_info *__target,
			     void **__obj_ptr) const;

  protected:
    const char *__name;
    
    explicit type_info(const char *__n): __name(__n) { }
    
  private:
    /// Assigning type_info is not supported.
    type_info& operator=(const type_info&);
    type_info(const type_info&);
  };

  /**
   *  @@brief  Thrown during incorrect typecasting.
   *
   *  If you attempt an invalid @@c dynamic_cast expression, an instance of
   *  this class (or something derived from this class) is thrown.  */
  class bad_cast : public exception 
  {
  public:
    bad_cast() throw() { }

    // This declaration is not useless:
    // http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118
    virtual ~bad_cast() throw();

    // See comment in eh_exception.cc.
    virtual const char* what() const throw();
  };
  
  /** If you use a NULL pointer in a @@c typeid expression, this is thrown.  */
  class bad_typeid : public exception 
  {
  public:
    bad_typeid () throw() { }

    // This declaration is not useless:
    // http://gcc.gnu.org/onlinedocs/gcc-3.0.2/gcc_6.html#SEC118
    virtual ~bad_typeid() throw();

    // See comment in eh_exception.cc.
    virtual const char* what() const throw();
  };
} // namespace std

#pragma GCC visibility pop

} // extern "C++"
#endif
@


1.3
log
@SVN rev 233391 on 2012-03-23 20:10:56Z by theraven

Revert ABI breakage in libsupc++.

Unfortunately, the ABI was broken upstream for the 4.2 release, which we
imported.  We then shipped the broken version for several years and certain
ports (e.g. libobjc2) depend on it, so we're stuck with it for now...

We should revisit this for 10.0, since we're allowed to break the ABI then, but
until then we should keep the ABI we shipped with 8.x and 9.x.

Reviewed by:	kan
Approved by:	dim (mentor)
MFC after:	1 week
@
text
@d103 6
a121 6
    // Return true if this is a pointer type of some kind
    virtual bool __is_pointer_p() const;

    // Return true if this is a function type
    virtual bool __is_function_p() const;

@


1.2
log
@SVN rev 228780 on 2011-12-21 16:36:07Z by pfg

Update libstdc++ with small updates from the latest rev. (135556)
from the gcc 4.2 branch.
The libraries in the gcc-4_2-branch remained under the LGPLv2.

The changes can be reproduced with the following command:

svn diff svn://gcc.gnu.org/svn/gcc/branches/gcc-4_2-branch/libstdc++-v3
 -r 127959:135556

Reviewed by:	mm
Approved by:	jhb (mentor)
MFC after:	2 weeks
@
text
@a102 6
    // Return true if this is a pointer type of some kind
    virtual bool __is_pointer_p() const;

    // Return true if this is a function type
    virtual bool __is_function_p() const;

d116 6
@


1.1
log
@Initial revision
@
text
@d2 2
a3 1
// Copyright (C) 1994, 1995, 1996, 1997, 1998, 2000, 2001, 2002
d6 1
a6 1
// This file is part of GNU CC.
d8 1
a8 1
// GNU CC is free software; you can redistribute it and/or modify
d13 1
a13 1
// GNU CC is distributed in the hope that it will be useful,
d19 3
a21 3
// along with GNU CC; see the file COPYING.  If not, write to
// the Free Software Foundation, 59 Temple Place - Suite 330,
// Boston, MA 02111-1307, USA.
d33 1
a33 1
 *  This header provides RTTI support.
d36 2
a37 2
#ifndef __TYPEINFO__
#define __TYPEINFO__
d41 2
d50 8
a57 6
#if !__GXX_WEAK__
  // If weak symbols are not supported, typeinfo names are not merged.
  #define __GXX_MERGED_TYPEINFO_NAMES 0
#else
  // On platforms that support weak symbols, typeinfo names are merged.
  #define __GXX_MERGED_TYPEINFO_NAMES 1
d62 4
a65 1
  /** The @@c type_info class describes type information generated by
d67 1
a67 1
   *  @@brief Used in RTTI.  */
d71 1
a71 1
    /** Destructor. Being the first non-inline virtual function, this
a76 13
  private:
    /// Assigning type_info is not supported.  Made private.
    type_info& operator=(const type_info&);
    type_info(const type_info&);
    
  protected:
    const char *__name;
    
  protected:
    explicit type_info(const char *__n): __name(__n) { }
    
  public:
    // the public interface
d84 1
d96 1
d102 2
a103 4
    
    // the internal interface
  public:
    // return true if this is a pointer type of some kind
d105 2
a106 1
    // return true if this is a function type
d118 1
a118 1
    // internally used during catch matching
d121 10
d133 4
a136 1
  /** If you attempt an invalid @@c dynamic_cast expression, an instance of
d142 1
d146 3
d156 1
d160 3
d166 2
@


1.1.1.1
log
@Gcc 3.1.0 pre-release's C++ support bits from the FSF anoncvs repo
on 9-May-2002 15:57:15 EDT.
@
text
@@


1.1.1.2
log
@Gcc 3.3.1-pre 2003-07-11 C++ support bits.
@
text
@d57 1
a57 4
  /**
   *  @@brief  Part of RTTI.
   *
   *  The @@c type_info class describes type information generated by
d59 1
a59 1
  */
d127 1
a127 4
  /**
   *  @@brief  Thrown during incorrect typecasting.
   *
   *  If you attempt an invalid @@c dynamic_cast expression, an instance of
@


1.1.1.3
log
@Gcc 3.4.2 20040728 C++ support bits.
@
text
@d5 1
a5 1
// This file is part of GCC.
d7 1
a7 1
// GCC is free software; you can redistribute it and/or modify
d12 1
a12 1
// GCC is distributed in the hope that it will be useful,
d18 1
a18 1
// along with GCC; see the file COPYING.  If not, write to
d35 2
a36 2
#ifndef _TYPEINFO
#define _TYPEINFO
@


1.1.1.4
log
@GCC 4.2.0 release C++ standard library and runtime support code.
@
text
@d2 1
a2 2
// Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002,
// 2003, 2004, 2005, 2006, 2007
d19 2
a20 2
// the Free Software Foundation, 51 Franklin Street, Fifth Floor,
// Boston, MA 02110-1301, USA.
d32 1
a32 1
 *  This is a Standard C++ Library header.
a39 2
#pragma GCC visibility push(default)

d47 6
a52 8
#ifndef __GXX_MERGED_TYPEINFO_NAMES
  #if !__GXX_WEAK__
    // If weak symbols are not supported, typeinfo names are not merged.
    #define __GXX_MERGED_TYPEINFO_NAMES 0
  #else
    // On platforms that support weak symbols, typeinfo names are merged.
    #define __GXX_MERGED_TYPEINFO_NAMES 1
  #endif
a141 2
    // See comment in eh_exception.cc.
    virtual const char* what() const throw();
a151 2
    // See comment in eh_exception.cc.
    virtual const char* what() const throw();
a154 2
#pragma GCC visibility pop

@


1.1.1.5
log
@GCC 4.2.1 release C++ standard library and runtime support code.
@
text
@d71 1
a71 1
    /** Destructor first. Being the first non-inline virtual function, this
d77 13
a96 1

a107 1

d114 7
d130 1
a130 1
    // Internally used during catch matching
a132 16

   // Return true if this is a pointer type of some kind
    virtual bool __is_pointer_p() const;

    // Return true if this is a function type
    virtual bool __is_function_p() const;

  protected:
    const char *__name;
    
    explicit type_info(const char *__n): __name(__n) { }
    
  private:
    /// Assigning type_info is not supported.
    type_info& operator=(const type_info&);
    type_info(const type_info&);
a143 1

a146 1

a155 1

a158 1

@


1.1.1.5.10.1
log
@SVN rev 230960 on 2012-02-03 21:30:31Z by pfg

MFC:	r228780

Update libstdc++ with small changes up to the latest rev. (135556)
from the gcc 4.2 branch.
The libraries in the gcc-4_2-branch remained under the LGPLv2.

Reviewed by:	mm
Approved by:	jhb (mentor)
@
text
@d102 1
a102 7

    // Return true if this is a pointer type of some kind
    virtual bool __is_pointer_p() const;

    // Return true if this is a function type
    virtual bool __is_function_p() const;

d116 6
@


1.1.1.5.22.1
log
@SVN rev 229551 on 2012-01-05 01:48:25Z by pfg

MFC:	r228780

Update libstdc++ with small changes up to the latest rev. (135556)
from the gcc 4.2 branch.
The libraries in the gcc-4_2-branch remained under the LGPLv2.

Reviewed by:	mm
Approved by:	jhb (mentor)
@
text
@d102 1
a102 7

    // Return true if this is a pointer type of some kind
    virtual bool __is_pointer_p() const;

    // Return true if this is a function type
    virtual bool __is_function_p() const;

d116 6
@


