aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlexandre Oliva <aoliva@redhat.com>2001-03-16 06:58:58 +0000
committerAlexandre Oliva <aoliva@gcc.gnu.org>2001-03-16 06:58:58 +0000
commite52ba67a259f60bc9ab8242bfbee676469169443 (patch)
treec6cfb0d90edad6a5c1f5c85e04e9eac88d05bfd0
parent110c3568a23b529419ca8d51c17ae4104c84e6d0 (diff)
downloadgcc-e52ba67a259f60bc9ab8242bfbee676469169443.zip
gcc-e52ba67a259f60bc9ab8242bfbee676469169443.tar.gz
gcc-e52ba67a259f60bc9ab8242bfbee676469169443.tar.bz2
gen-num-limits.cc (signal_adapter): Overloaded to match signal_func with an unspecified argument list.
* src/gen-num-limits.cc (signal_adapter): Overloaded to match signal_func with an unspecified argument list. From-SVN: r40546
-rw-r--r--libstdc++-v3/ChangeLog5
-rw-r--r--libstdc++-v3/src/gen-num-limits.cc12
2 files changed, 15 insertions, 2 deletions
diff --git a/libstdc++-v3/ChangeLog b/libstdc++-v3/ChangeLog
index 3a4198f..f6d3bc3 100644
--- a/libstdc++-v3/ChangeLog
+++ b/libstdc++-v3/ChangeLog
@@ -1,3 +1,8 @@
+2001-03-16 Alexandre Oliva <aoliva@redhat.com>
+
+ * src/gen-num-limits.cc (signal_adapter): Overloaded to match
+ signal_func with an unspecified argument list.
+
2001-03-15 Benjamin Kosnik <bkoz@redhat.com>
* tests_flags.in (CXXFLAGS): Link libstdc++ before libsupc++.
diff --git a/libstdc++-v3/src/gen-num-limits.cc b/libstdc++-v3/src/gen-num-limits.cc
index 1a9df6f..00dfc85 100644
--- a/libstdc++-v3/src/gen-num-limits.cc
+++ b/libstdc++-v3/src/gen-num-limits.cc
@@ -114,8 +114,16 @@ template <typename signal_handler_type, typename signal_number_type>
inline void (*signal_adapter (signal_handler_type
(*signal_func)(signal_number_type,
signal_handler_type),
- signal_number_type arg,
- void (*handler)(int)))(int)
+ signal_number_type arg,
+ void (*handler)(int)))(int)
+{
+ return (void (*)(int))(*signal_func)(arg, (signal_handler_type)handler);
+}
+
+template <typename signal_handler_type, typename signal_number_type>
+inline void (*signal_adapter (signal_handler_type (*signal_func)(...),
+ signal_number_type arg,
+ void (*handler)(int)))(int)
{
return (void (*)(int))(*signal_func)(arg, (signal_handler_type)handler);
}