From b07c329d63d561367d1676b6c214dedc44b3cd13 Mon Sep 17 00:00:00 2001 From: law <law@138bc75d-0d04-0410-961f-82ee72b054a4> Date: Wed, 7 Apr 1999 04:29:03 +0000 Subject: [PATCH] Add new tests. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@26239 138bc75d-0d04-0410-961f-82ee72b054a4 --- .../g++.old-deja/g++.brendan/complex1.C | 22 +++++++++++ .../g++.old-deja/g++.brendan/def-args1.C | 9 +++++ .../g++.old-deja/g++.brendan/template31.C | 38 +++++++++++++++++++ 3 files changed, 69 insertions(+) create mode 100644 gcc/testsuite/g++.old-deja/g++.brendan/complex1.C create mode 100644 gcc/testsuite/g++.old-deja/g++.brendan/def-args1.C create mode 100644 gcc/testsuite/g++.old-deja/g++.brendan/template31.C diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/complex1.C b/gcc/testsuite/g++.old-deja/g++.brendan/complex1.C new file mode 100644 index 000000000000..908b4ca5f908 --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.brendan/complex1.C @@ -0,0 +1,22 @@ +// Special g++ Options: + +// This test makes sure that the stuff in lex.c (real_yylex) is +// set up to handle real and imag numbers correctly. This test is against +// a bug where the compiler was not converting the integer `90' to a +// complex number, unless you did `90.0'. Fixed 10/1/1997. + +extern "C" void printf (char *, ...); + +__complex__ double cd; + +int +main(int argc, char *argv[]) +{ + cd = 1.0+90i; + cd *= argc; + + if (__real__ cd != 1 || __imag__ cd != 90) + exit (1); + + exit (0); +} diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/def-args1.C b/gcc/testsuite/g++.old-deja/g++.brendan/def-args1.C new file mode 100644 index 000000000000..55efc52e334c --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.brendan/def-args1.C @@ -0,0 +1,9 @@ +// Build don't link: +// PRMS Id: 10860 +class Beige +{ +public: + static int yellow(); + void white(int green = yellow()); + void aqua(int green = Beige::yellow()); +}; diff --git a/gcc/testsuite/g++.old-deja/g++.brendan/template31.C b/gcc/testsuite/g++.old-deja/g++.brendan/template31.C new file mode 100644 index 000000000000..3a1b149fb93f --- /dev/null +++ b/gcc/testsuite/g++.old-deja/g++.brendan/template31.C @@ -0,0 +1,38 @@ +// Build don't link: +// GROUPS passed templates +// PRMS Id: 13218 + +struct C { + int x; + char y; + double z; +}; +C c02; + +template <int* ip> struct A { + int* p; + A() : p(ip) {} +}; + +template <C* cp> struct B { + C* p; + B() : p(cp) {} +}; + +int i00; + +int main(void) +{ + A<&i00> a00; + + extern int i01; + A<&i01> a01; + + B<&c02> b02; + + extern C c03; + B<&c03> b03; +} + +int i01; +C c03; -- GitLab