📄 configure
字号:
if { (eval echo configure:1358: \"$ac_compile\") 1>&5; (eval $ac_compile) 2>&5; }; then
rm -rf conftest*
ac_cv_new_new="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
cat >> confdefs.h <<\EOF
#define __STL_NO_NEW_NEW_HEADER 1
EOF
ac_cv_new_new="no"
fi
rm -f conftest*
echo "$ac_t""$ac_cv_new_new" 1>&6
echo $ac_n "checking for member template methods""... $ac_c" 1>&6
echo "configure:1375: checking for member template methods" >&5
cat > conftest.$ac_ext <<EOF
#line 1377 "configure"
#include "confdefs.h"
template <class Result>
struct mt_foo {
typedef Result result_type;
template <class Arg> result_type operate(const Arg&) { return Result(); }
};
mt_foo<int> p;
int main() {
(void)p.operate((char*)"aaa");
; return 0; }
EOF
if { (eval echo configure:1393: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_member_templates="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
cat >> confdefs.h <<\EOF
#define __STL_NO_MEMBER_TEMPLATES 1
EOF
ac_cv_member_templates="no"
fi
rm -f conftest*
echo "$ac_t""$ac_cv_member_templates" 1>&6
echo $ac_n "checking for friend templates""... $ac_c" 1>&6
echo "configure:1410: checking for friend templates" >&5
cat > conftest.$ac_ext <<EOF
#line 1412 "configure"
#include "confdefs.h"
template <class Result2> class foo;
template <class Result>
struct ft_foo {
typedef Result result_type;
template <class Result2> friend class foo;
};
ft_foo<int> p;
int main() {
; return 0; }
EOF
if { (eval echo configure:1429: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_friend_templates="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
cat >> confdefs.h <<\EOF
#define __STL_NO_FRIEND_TEMPLATES 1
EOF
ac_cv_friend_templates="no"
fi
rm -f conftest*
echo "$ac_t""$ac_cv_friend_templates" 1>&6
echo $ac_n "checking for qualified friend templates""... $ac_c" 1>&6
echo "configure:1446: checking for qualified friend templates" >&5
cat > conftest.$ac_ext <<EOF
#line 1448 "configure"
#include "confdefs.h"
${_TEST_STD_BEGIN}
template <class Result2> class foo;
template <class Result>
struct ft_foo {
typedef Result result_type;
template <class Result2> friend class $_TEST_STD::foo;
};
ft_foo<int> p;
${_TEST_STD_END}
int main() {
; return 0; }
EOF
if { (eval echo configure:1469: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_qual_friend_templates="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
cat >> confdefs.h <<\EOF
#define __STL_NO_QUALIFIED_FRIENDS 1
EOF
ac_cv_qual_friend_templates="no"
fi
rm -f conftest*
echo "$ac_t""$ac_cv_qual_friend_templates" 1>&6
echo $ac_n "checking for member template keyword""... $ac_c" 1>&6
echo "configure:1486: checking for member template keyword" >&5
cat > conftest.$ac_ext <<EOF
#line 1488 "configure"
#include "confdefs.h"
template <class Result>
struct nt_foo {
typedef Result result_type;
template <class Arg> struct rebind { typedef nt_foo<Arg> other; };
};
template <class _Tp, class _Allocator>
struct _Traits
{
typedef typename _Allocator:: template rebind<_Tp> my_rebind;
typedef typename my_rebind::other allocator_type;
};
nt_foo<char> p;
_Traits< int, nt_foo<short> > pp;
int main() {
; return 0; }
EOF
if { (eval echo configure:1511: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_member_template_keyword="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
cat >> confdefs.h <<\EOF
#define __STL_NO_MEMBER_TEMPLATE_KEYWORD 1
EOF
ac_cv_member_template_keyword="no"
fi
rm -f conftest*
echo "$ac_t""$ac_cv_member_template_keyword" 1>&6
if test "$ac_cv_member_template_keyword" = "no"; then
echo $ac_n "checking for member template classes""... $ac_c" 1>&6
echo "configure:1529: checking for member template classes" >&5
cat > conftest.$ac_ext <<EOF
#line 1531 "configure"
#include "confdefs.h"
template <class Result>
struct nt_foo {
typedef Result result_type;
template <class Arg> struct rebind { typedef nt_foo<Arg> other; };
};
template <class _Tp, class _Allocator>
struct _Traits
{
typedef typename _Allocator::rebind<_Tp> my_rebind;
typedef typename my_rebind::other allocator_type;
};
nt_foo<char> p;
_Traits< int, nt_foo<short> > pp;
int main() {
; return 0; }
EOF
if { (eval echo configure:1554: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_member_template_classes="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
cat >> confdefs.h <<\EOF
#define __STL_NO_MEMBER_TEMPLATE_CLASSES 1
EOF
ac_cv_member_template_classes="no"
fi
rm -f conftest*
echo "$ac_t""$ac_cv_member_template_classes" 1>&6
fi
echo $ac_n "checking for partial class specialization""... $ac_c" 1>&6
echo "configure:1572: checking for partial class specialization" >&5
cat > conftest.$ac_ext <<EOF
#line 1574 "configure"
#include "confdefs.h"
template <class Arg,class Result>
struct ps_foo {
typedef Arg argument_type;
typedef Result result_type;
};
template<class Result>
struct ps_foo<Result*,Result*> {
void bar() {}
};
template<class Result>
struct ps_foo<int*,Result> {
void foo() {}
};
ps_foo<char*, char*> p;
ps_foo<int*, int> p1;
int main() {
p.bar();
p1.foo();
; return 0; }
EOF
if { (eval echo configure:1601: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_partial_spec="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
cat >> confdefs.h <<\EOF
#define __STL_NO_CLASS_PARTIAL_SPECIALIZATION 1
EOF
ac_cv_partial_spec="no"
fi
rm -f conftest*
echo "$ac_t""$ac_cv_partial_spec" 1>&6
if test "$ac_cv_partial_spec" = yes; then
echo $ac_n "checking if explicit args accepted on constructors of partial specialized classes""... $ac_c" 1>&6
echo "configure:1620: checking if explicit args accepted on constructors of partial specialized classes" >&5
cat > conftest.$ac_ext <<EOF
#line 1622 "configure"
#include "confdefs.h"
template <class Arg,class Result>
struct ps_foo {
typedef Arg argument_type;
typedef Result result_type;
};
template<class Result>
struct ps_foo<Result*,Result*> {
ps_foo<Result*,Result*>() {}
void bar() {}
};
template<class Result>
struct ps_foo<int*,Result> {
ps_foo<int*,Result*>() {}
void bar() {}
};
ps_foo<char*, char*> p;
ps_foo<int*, int> p1;
int main() {
p.bar();
p1.foo();
; return 0; }
EOF
if { (eval echo configure:1652: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
cat >> confdefs.h <<\EOF
#define __STL_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS 1
EOF
ac_cv_partial_spec_needs_args="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
ac_cv_partial_spec_needs_args="no"
fi
rm -f conftest*
echo "$ac_t""$ac_cv_partial_spec_needs_args" 1>&6
fi
if test ac_cv_partial_spec_needs_args=="no"; then
echo $ac_n "checking if explicit args accepted on constructors of explicitly specialized classes""... $ac_c" 1>&6
echo "configure:1673: checking if explicit args accepted on constructors of explicitly specialized classes" >&5
cat > conftest.$ac_ext <<EOF
#line 1675 "configure"
#include "confdefs.h"
template <class Arg,class Result>
struct ps_foo {
typedef Arg argument_type;
typedef Result result_type;
void bar() {}
};
template<class Result>
struct ps_foo<int*,int> {
ps_foo<Result*,Result*>() {}
void foo() {}
};
ps_foo<char*, char*> p;
ps_foo<int*, int> p1;
int main() {
p.bar();
p1.foo();
; return 0; }
EOF
if { (eval echo configure:1699: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
cat >> confdefs.h <<\EOF
#define __STL_PARTIAL_SPEC_NEEDS_TEMPLATE_ARGS 1
EOF
ac_cv_partial_spec_needs_args="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
ac_cv_partial_spec_needs_args="no"
fi
rm -f conftest*
echo "$ac_t""$ac_cv_partial_spec_needs_args" 1>&6
fi
echo $ac_n "checking for partial template function ordering""... $ac_c" 1>&6
echo "configure:1718: checking for partial template function ordering" >&5
cat > conftest.$ac_ext <<EOF
#line 1720 "configure"
#include "confdefs.h"
template <class Arg,class Result>
Result po_foo (const Arg& a,const Result&){ return (Result)a.nothing; }
template <class T>
struct A {
T a;
A(int _a) : a(_a) {}
};
template<class T>
T po_foo (const A<T>& a, const A<T>& b){ return a.a; }
int main() {
A<int> po_a(0); A<int> po_b(1); (void)po_foo(po_b, po_a)
; return 0; }
EOF
if { (eval echo configure:1742: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_partial_ord="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
cat >> confdefs.h <<\EOF
#define __STL_NO_FUNCTION_TMPL_PARTIAL_ORDER 1
EOF
ac_cv_partial_ord="no"
fi
rm -f conftest*
echo "$ac_t""$ac_cv_partial_ord" 1>&6
echo $ac_n "checking for method specialization""... $ac_c" 1>&6
echo "configure:1759: checking for method specialization" >&5
cat > conftest.$ac_ext <<EOF
#line 1761 "configure"
#include "confdefs.h"
template <class Arg,class Result>
struct ms_foo {
typedef Arg argument_type;
typedef Result result_type;
inline void bar();
};
template <class Arg,class Result>
inline void ms_foo<Arg,Result>::bar() {}
inline void ms_foo<int*,int>::bar() {}
ms_foo<char*, char*> p;
ms_foo<int*, int> p1;
int main() {
p.bar();
p1.bar();
; return 0; }
EOF
if { (eval echo configure:1784: \"$ac_link\") 1>&5; (eval $ac_link) 2>&5; } && test -s conftest${ac_exeext}; then
rm -rf conftest*
ac_cv_method_spec="yes"
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
rm -rf conftest*
cat >> confdefs.h <<\EOF
#define __STL_NO_METHOD_SPECIALIZATION 1
EOF
ac_cv_method_spec="no"
fi
rm -f conftest*
echo "$ac_t""$ac_cv_method_spec" 1>&6
echo $ac_n "checking for lrand48 function""... $ac_c" 1>&6
echo "configure:1801: checking for lrand48 function" >&5
cat > conftest.$ac_ext <<EOF
#line 1803 "configure"
#include "confdefs.h"
#include <stdlib.h>
int main() {
long i = lrand48();
; return 0; }
EOF
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -