*** empty log message ***

This commit is contained in:
Geert-Jan Giezeman 2000-02-08 13:24:10 +00:00
parent 6a4ab6a969
commit a44a0a379a
16 changed files with 13 additions and 781 deletions

View File

@ -1,3 +1,14 @@
// 2.2
+ made the long name in CGAL_CFG_NO_LONGNAME_PROBLEM.C longer.
+ removed several tests that pass on all supported platforms
CGAL_CFG_MATCHING_BUG_1.C
CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION.C
CGAL_CFG_NO_ITERATOR_TRAITS.C
CGAL_CFG_NO_NAMESPACE.C
CGAL_CFG_NO_PARTIAL_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION.C
CGAL_CFG_NO_STDIO_NAMESPACE.C
CGAL_CFG_NO_STD_NAMESPACE.C
//-----------------------------------------------------------------------//
// 2.1
+ removed macros

View File

@ -1,44 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// ----------------------------------------------------------------------
//
// release :
// release_date :
//
// file : config/testfiles/CGAL_CFG_MATCHING_BUG_1.C
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_MATCHING_BUG_1.C
// ---------------------------------------------------------------------
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| This flag is set, if the compiler does not match a function
//| argument of type typename T::A correctly.
//| (e.g. SGI 7.2)
struct Z {
typedef int A;
};
template < class T >
void foo( T, typename T::A)
{}
int main() {
Z z;
foo( z, 0);
return 0;
}
// EOF //

View File

@ -1,46 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// ----------------------------------------------------------------------
//
// release :
// release_date :
//
// file : config/testfiles/CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION.C
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION.C
// ---------------------------------------------------------------------
// A short test program to evaluate a C++ compiler whether it likes
// explicit specification of template arguments in template function calls.
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| If a compiler doesn't like explicit specification of
//| template arguments in template function calls, the flag
//| CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION is set.
template <class Cls>
Cls
cube(const Cls& c)
{ return c * c * c; }
int
main()
{
double d;
int i = 2;
d = cube<double>(i);
return 0;
}
// EOF //

View File

@ -1,96 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// ----------------------------------------------------------------------
//
// release :
// release_date :
//
// file : config/testfiles/CGAL_CFG_NO_ITERATOR_TRAITS.C
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_NO_ITERATOR_TRAITS.C
// ---------------------------------------------------------------------
// A short test program to evaluate a C++ compiler.
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| Iterator traits are documented in the Dec. 1996 C++ Standard draft.
//| The following definition is set if iterator are not fully supported
//| including their use in a template class, as a default template
//| argument and as a return type of global function.
#include <iterator>
#include <vector>
// This class implements an iterator adaptor that forwards all
// member function calls to its template argument. It uses
// iterator traits to derive correct types and iterator category.
#ifdef _MSC_VER
using namespace std; // MSC hates "using std::{blah};"....
#define typename // preventing MSVC 6.0 "error C2899:
// typename cannot be used outside a template
#else
using std::iterator_traits;
#endif // _MSC_VER
template < class I,
class category = typename iterator_traits<I>::iterator_category >
class Adaptor {
I _i;
public:
typedef typename iterator_traits<I>::value_type value_type;
typedef typename iterator_traits<I>::difference_type difference_type;
typedef typename iterator_traits<I>::reference reference;
typedef typename iterator_traits<I>::pointer pointer;
typedef category iterator_category;
Adaptor( I i) : _i(i) {}
Adaptor<I, category>&
operator++() {
++_i;
return *this;
}
reference
operator*() const {
return *_i;
}
};
// A global function to extract the iterator category.
template < class I> inline
typename iterator_traits<I>::iterator_category
query( I i) {
return iterator_traits<I>::iterator_category();
}
// A function to match bidirectional iterators.
inline
int discr( std::bidirectional_iterator_tag tag) { return 42; }
bool all_assertions_correct = true;
int main() {
std::vector<int> v;
v.push_back(32);
v.push_back(33);
v.push_back(42);
Adaptor< std::vector<int>::iterator> i( v.begin());
++i;
all_assertions_correct &= ( *i == 33);
++i;
all_assertions_correct &= ( *i == 42);
all_assertions_correct &= ( discr( query( i)) == 42);
return !all_assertions_correct;
}

View File

@ -1,62 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// This software and related documentation is part of an INTERNAL release
// of the Computational Geometry Algorithms Library (CGAL). It is not
// intended for general use.
//
// ----------------------------------------------------------------------
//
// release : $CGAL_Revision: CGAL-2.0-I-1 $
// release_date : $CGAL_Date: 1999/02/09 $
//
// file : config/testfiles/CGAL_CFG_NO_NAMESPACE.C
// package : Configuration (1.21)
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_NO_NAMESPACE.C
// ---------------------------------------------------------------------
// A short test program to evaluate a C++ compiler.
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| If a compiler doesn't know namespaces, the flag
//| CGAL_CFG_NO_NAMESPACE is set.
namespace A {
int foo() { return 1; }
}
namespace B {
int foo() { return 2; }
}
bool all_assertions_correct = true;
int main()
{
all_assertions_correct &= ( A::foo() == 1);
all_assertions_correct &= ( B::foo() == 2);
{
using namespace A;
all_assertions_correct &= ( foo() == 1);
}
{
using namespace B;
all_assertions_correct &= ( foo() == 2);
}
return !all_assertions_correct;
}
// EOF //

View File

@ -1,46 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// ----------------------------------------------------------------------
//
// release :
// release_date :
//
// file : config/testfiles/CGAL_CFG_NO_PARTIAL_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION.C
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_NO_PARTIAL_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION.C
// ---------------------------------------------------------------------
// A short test program to evaluate a C++ compiler whether it likes
// partial specification of template arguments in template function calls.
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| If a compiler doesn't like explicit partial specification of
//| template arguments in template function calls, the flag
//| CGAL_CFG_NO_PARTIAL_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION is set.
template <class To, class From>
To
convert(const From& f)
{ return (To)(f); }
int
main()
{
double d;
int i = 1;
d = convert<double>(i);
return 0;
}
// EOF //

View File

@ -1,54 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// This software and related documentation is part of an INTERNAL release
// of the Computational Geometry Algorithms Library (CGAL). It is not
// intended for general use.
//
// ----------------------------------------------------------------------
//
// release : $CGAL_Revision: CGAL-2.0-I-3 $
// release_date : $CGAL_Date: 1999/03/08 $
//
// file : config/testfiles/CGAL_CFG_NO_STDIO_NAMESPACE.C
// package : Configuration (1.26)
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_NO_STDIO_NAMESPACE.C
// ---------------------------------------------------------------------
// A short test program to evaluate a C++ compiler.
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| The flag CGAL_CFG_NO_STDIO_NAMESPACE is set, if a compiler does not
//| put the IO standard library in namespace std.
#include <iosfwd>
#include <iostream>
#include <iomanip>
#include <streambuf>
#include <fstream>
// just some randomly selected symbols
using std::cout;
using std::cerr;
using std::endl;
using std::ostream;
using std::ofstream;
int main()
{
return 0;
}
// EOF //

View File

@ -1,42 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// ----------------------------------------------------------------------
//
// release :
// release_date :
//
// file : config/testfiles/CGAL_CFG_NO_STD_NAMESPACE.C
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_NO_STD_NAMESPACE.C
// ---------------------------------------------------------------------
// A short test program to evaluate a C++ compiler.
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| If a compiler doesn't know the namespace std, the flag
//| CGAL_CFG_NO_STD_NAMESPACE is set. Some compilers know namespace std
//| but don't implement namespaces in general.
#include <vector>
using namespace std;
int main()
{
std::vector<int> v;
return 0;
}
// EOF //

View File

@ -1,44 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// ----------------------------------------------------------------------
//
// release :
// release_date :
//
// file : config/testfiles/CGAL_CFG_MATCHING_BUG_1.C
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_MATCHING_BUG_1.C
// ---------------------------------------------------------------------
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| This flag is set, if the compiler does not match a function
//| argument of type typename T::A correctly.
//| (e.g. SGI 7.2)
struct Z {
typedef int A;
};
template < class T >
void foo( T, typename T::A)
{}
int main() {
Z z;
foo( z, 0);
return 0;
}
// EOF //

View File

@ -1,46 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// ----------------------------------------------------------------------
//
// release :
// release_date :
//
// file : config/testfiles/CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION.C
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION.C
// ---------------------------------------------------------------------
// A short test program to evaluate a C++ compiler whether it likes
// explicit specification of template arguments in template function calls.
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| If a compiler doesn't like explicit specification of
//| template arguments in template function calls, the flag
//| CGAL_CFG_NO_EXPLICIT_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION is set.
template <class Cls>
Cls
cube(const Cls& c)
{ return c * c * c; }
int
main()
{
double d;
int i = 2;
d = cube<double>(i);
return 0;
}
// EOF //

View File

@ -1,96 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// ----------------------------------------------------------------------
//
// release :
// release_date :
//
// file : config/testfiles/CGAL_CFG_NO_ITERATOR_TRAITS.C
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_NO_ITERATOR_TRAITS.C
// ---------------------------------------------------------------------
// A short test program to evaluate a C++ compiler.
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| Iterator traits are documented in the Dec. 1996 C++ Standard draft.
//| The following definition is set if iterator are not fully supported
//| including their use in a template class, as a default template
//| argument and as a return type of global function.
#include <iterator>
#include <vector>
// This class implements an iterator adaptor that forwards all
// member function calls to its template argument. It uses
// iterator traits to derive correct types and iterator category.
#ifdef _MSC_VER
using namespace std; // MSC hates "using std::{blah};"....
#define typename // preventing MSVC 6.0 "error C2899:
// typename cannot be used outside a template
#else
using std::iterator_traits;
#endif // _MSC_VER
template < class I,
class category = typename iterator_traits<I>::iterator_category >
class Adaptor {
I _i;
public:
typedef typename iterator_traits<I>::value_type value_type;
typedef typename iterator_traits<I>::difference_type difference_type;
typedef typename iterator_traits<I>::reference reference;
typedef typename iterator_traits<I>::pointer pointer;
typedef category iterator_category;
Adaptor( I i) : _i(i) {}
Adaptor<I, category>&
operator++() {
++_i;
return *this;
}
reference
operator*() const {
return *_i;
}
};
// A global function to extract the iterator category.
template < class I> inline
typename iterator_traits<I>::iterator_category
query( I i) {
return iterator_traits<I>::iterator_category();
}
// A function to match bidirectional iterators.
inline
int discr( std::bidirectional_iterator_tag tag) { return 42; }
bool all_assertions_correct = true;
int main() {
std::vector<int> v;
v.push_back(32);
v.push_back(33);
v.push_back(42);
Adaptor< std::vector<int>::iterator> i( v.begin());
++i;
all_assertions_correct &= ( *i == 33);
++i;
all_assertions_correct &= ( *i == 42);
all_assertions_correct &= ( discr( query( i)) == 42);
return !all_assertions_correct;
}

View File

@ -1,62 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// This software and related documentation is part of an INTERNAL release
// of the Computational Geometry Algorithms Library (CGAL). It is not
// intended for general use.
//
// ----------------------------------------------------------------------
//
// release : $CGAL_Revision: CGAL-2.0-I-1 $
// release_date : $CGAL_Date: 1999/02/09 $
//
// file : config/testfiles/CGAL_CFG_NO_NAMESPACE.C
// package : Configuration (1.21)
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_NO_NAMESPACE.C
// ---------------------------------------------------------------------
// A short test program to evaluate a C++ compiler.
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| If a compiler doesn't know namespaces, the flag
//| CGAL_CFG_NO_NAMESPACE is set.
namespace A {
int foo() { return 1; }
}
namespace B {
int foo() { return 2; }
}
bool all_assertions_correct = true;
int main()
{
all_assertions_correct &= ( A::foo() == 1);
all_assertions_correct &= ( B::foo() == 2);
{
using namespace A;
all_assertions_correct &= ( foo() == 1);
}
{
using namespace B;
all_assertions_correct &= ( foo() == 2);
}
return !all_assertions_correct;
}
// EOF //

View File

@ -1,46 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// ----------------------------------------------------------------------
//
// release :
// release_date :
//
// file : config/testfiles/CGAL_CFG_NO_PARTIAL_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION.C
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_NO_PARTIAL_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION.C
// ---------------------------------------------------------------------
// A short test program to evaluate a C++ compiler whether it likes
// partial specification of template arguments in template function calls.
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| If a compiler doesn't like explicit partial specification of
//| template arguments in template function calls, the flag
//| CGAL_CFG_NO_PARTIAL_TEMPLATE_FUNCTION_ARGUMENT_SPECIFICATION is set.
template <class To, class From>
To
convert(const From& f)
{ return (To)(f); }
int
main()
{
double d;
int i = 1;
d = convert<double>(i);
return 0;
}
// EOF //

View File

@ -1,54 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// This software and related documentation is part of an INTERNAL release
// of the Computational Geometry Algorithms Library (CGAL). It is not
// intended for general use.
//
// ----------------------------------------------------------------------
//
// release : $CGAL_Revision: CGAL-2.0-I-3 $
// release_date : $CGAL_Date: 1999/03/08 $
//
// file : config/testfiles/CGAL_CFG_NO_STDIO_NAMESPACE.C
// package : Configuration (1.26)
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_NO_STDIO_NAMESPACE.C
// ---------------------------------------------------------------------
// A short test program to evaluate a C++ compiler.
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| The flag CGAL_CFG_NO_STDIO_NAMESPACE is set, if a compiler does not
//| put the IO standard library in namespace std.
#include <iosfwd>
#include <iostream>
#include <iomanip>
#include <streambuf>
#include <fstream>
// just some randomly selected symbols
using std::cout;
using std::cerr;
using std::endl;
using std::ostream;
using std::ofstream;
int main()
{
return 0;
}
// EOF //

View File

@ -1,42 +0,0 @@
// ======================================================================
//
// Copyright (c) 1997 The CGAL Consortium
//
// ----------------------------------------------------------------------
//
// release :
// release_date :
//
// file : config/testfiles/CGAL_CFG_NO_STD_NAMESPACE.C
// source :
// revision : 1.11
// revision_date : 29 Mar 1998
// author(s) : various
//
// coordinator : Utrecht University
//
// ======================================================================
// CGAL_CFG_NO_STD_NAMESPACE.C
// ---------------------------------------------------------------------
// A short test program to evaluate a C++ compiler.
// This program is used by cgal_configure.
// The following documentation will be pasted in the generated configfile.
// ---------------------------------------------------------------------
//| If a compiler doesn't know the namespace std, the flag
//| CGAL_CFG_NO_STD_NAMESPACE is set. Some compilers know namespace std
//| but don't implement namespaces in general.
#include <vector>
using namespace std;
int main()
{
std::vector<int> v;
return 0;
}
// EOF //

View File

@ -1 +1,2 @@
2.1 (28 Jan 2000)
2.2 (8 Feb 2000)
maintainer: Geert-Jan Giezeman <geert@cs.uu.nl>