35 lines
998 B
Plaintext
35 lines
998 B
Plaintext
|
dnl @synopsis AC_CXX_RTTI
|
||
|
dnl
|
||
|
dnl If the compiler supports Run-Time Type Identification (typeinfo
|
||
|
dnl header and typeid keyword), define HAVE_RTTI.
|
||
|
dnl
|
||
|
dnl @version $Id: ac_cxx_rtti.m4,v 1.1 2001/06/02 22:29:52 smr99 Exp $
|
||
|
dnl @author Luc Maisonobe
|
||
|
dnl
|
||
|
AC_DEFUN([AC_CXX_RTTI],
|
||
|
[AC_CACHE_CHECK(whether the compiler supports Run-Time Type Identification,
|
||
|
ac_cv_cxx_rtti,
|
||
|
[AC_LANG_SAVE
|
||
|
AC_LANG_CPLUSPLUS
|
||
|
AC_TRY_COMPILE([#include <typeinfo>
|
||
|
class Base { public :
|
||
|
Base () {}
|
||
|
virtual int f () { return 0; }
|
||
|
};
|
||
|
class Derived : public Base { public :
|
||
|
Derived () {}
|
||
|
virtual int f () { return 1; }
|
||
|
};
|
||
|
],[Derived d;
|
||
|
Base *ptr = &d;
|
||
|
return typeid (*ptr) == typeid (Derived);
|
||
|
],
|
||
|
ac_cv_cxx_rtti=yes, ac_cv_cxx_rtti=no)
|
||
|
AC_LANG_RESTORE
|
||
|
])
|
||
|
if test "$ac_cv_cxx_rtti" = yes; then
|
||
|
AC_DEFINE(HAVE_RTTI,1,
|
||
|
[define if the compiler supports Run-Time Type Identification])
|
||
|
fi
|
||
|
])
|