summaryrefslogtreecommitdiff
path: root/libexec/ld.so/test
diff options
context:
space:
mode:
authorDale S. Rahn <rahnds@cvs.openbsd.org>2000-06-13 03:40:40 +0000
committerDale S. Rahn <rahnds@cvs.openbsd.org>2000-06-13 03:40:40 +0000
commit737c8c92ac5bae0de1427970dff4bdd4cf9bd85e (patch)
treed47d8a6808081befd72dbcafb7bffadf104b1411 /libexec/ld.so/test
parentfe1bdbab88774dd0b581b085d5bd355f2b2ab86b (diff)
Updated version of ld.so, contains additional functionality and fixes/
design changes required by egcs. added support for ldconfig/ld.so.hints changes to low level relocation code, required by egcs pic code generation that moved global variable loads to before the self relocation was performed. Only powerpc supported, mips code not updated. Code cleaned up somewhat reasonably. This code needs to be reviewed closely for significant problems such as correctness and security.
Diffstat (limited to 'libexec/ld.so/test')
-rw-r--r--libexec/ld.so/test/A.C26
-rw-r--r--libexec/ld.so/test/a.h14
-rw-r--r--libexec/ld.so/test/tst.C7
3 files changed, 47 insertions, 0 deletions
diff --git a/libexec/ld.so/test/A.C b/libexec/ld.so/test/A.C
new file mode 100644
index 00000000000..c7816bab71e
--- /dev/null
+++ b/libexec/ld.so/test/A.C
@@ -0,0 +1,26 @@
+#include "iostream.h"
+#include "a.h"
+
+AA::AA()
+{
+ cout << "A constructor\n";
+}
+AA::~AA()
+{
+ cout << "A destructor\n";
+}
+
+AA a;
+AA d;
+/*
+AA f;
+*/
+
+B::B()
+{
+ cout << "B constructor\n";
+}
+B::~B()
+{
+ cout << "B destructor\n";
+}
diff --git a/libexec/ld.so/test/a.h b/libexec/ld.so/test/a.h
new file mode 100644
index 00000000000..0cdaefe8777
--- /dev/null
+++ b/libexec/ld.so/test/a.h
@@ -0,0 +1,14 @@
+class B {
+public:
+ B();
+ ~B();
+ int i;
+};
+
+class AA {
+ B b;
+public:
+ AA();
+ ~AA();
+ int i;
+};
diff --git a/libexec/ld.so/test/tst.C b/libexec/ld.so/test/tst.C
new file mode 100644
index 00000000000..64a222f21f0
--- /dev/null
+++ b/libexec/ld.so/test/tst.C
@@ -0,0 +1,7 @@
+#include "iostream.h"
+#include "a.h"
+
+AA b;
+main()
+{
+}