Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(41)

Unified Diff: gdb/testsuite/gdb.base/info-shared.c

Issue 124383005: GDB 7.6.50 (Closed) Base URL: http://git.chromium.org/native_client/nacl-gdb.git@upstream
Patch Set: Created 6 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « gdb/testsuite/gdb.base/info-proc.exp ('k') | gdb/testsuite/gdb.base/info-shared.exp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: gdb/testsuite/gdb.base/info-shared.c
diff --git a/gdb/testsuite/gdb.cp/infcall-dlopen.cc b/gdb/testsuite/gdb.base/info-shared.c
similarity index 59%
copy from gdb/testsuite/gdb.cp/infcall-dlopen.cc
copy to gdb/testsuite/gdb.base/info-shared.c
index 024eb046c0dbd47a1e0015361f006961654e5376..194af22cb5d10267069a1841958fcf1238aa5af0 100644
--- a/gdb/testsuite/gdb.cp/infcall-dlopen.cc
+++ b/gdb/testsuite/gdb.base/info-shared.c
@@ -1,6 +1,4 @@
-/* This testcase is part of GDB, the GNU debugger.
-
- Copyright 2010-2012 Free Software Foundation, Inc.
+/* Copyright 2012-2013 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
@@ -16,28 +14,39 @@
along with this program. If not, see <http://www.gnu.org/licenses/>. */
#include <dlfcn.h>
+#include <assert.h>
#include <stddef.h>
-static int
-openlib (const char *filename)
+void
+stop (void)
{
- void *h = dlopen (filename, RTLD_LAZY);
-
- if (filename == NULL)
- return 0;
-
- if (h == NULL)
- return 0;
- if (dlclose (h) != 0)
- return 0;
- return 1;
}
int
main (void)
{
- /* Dummy call to get the function always compiled in. */
- openlib (NULL);
+ void *handle1, *handle2;
+ void (*func)(int);
+
+ handle1 = dlopen (SHLIB1_NAME, RTLD_LAZY);
+ assert (handle1 != NULL);
+ stop ();
+
+ handle2 = dlopen (SHLIB2_NAME, RTLD_LAZY);
+ assert (handle2 != NULL);
+ stop ();
+
+ func = (void (*)(int)) dlsym (handle1, "foo");
+ func (1);
+
+ func = (void (*)(int)) dlsym (handle2, "bar");
+ func (2);
+
+ dlclose (handle1);
+ stop ();
+
+ dlclose (handle2);
+ stop ();
return 0;
}
« no previous file with comments | « gdb/testsuite/gdb.base/info-proc.exp ('k') | gdb/testsuite/gdb.base/info-shared.exp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698