--- libtirpc-0.2.3.orig/tirpc/rpc/rpc.h	2013-02-13 16:13:59.000000000 +0100
+++ libtirpc-0.2.3/tirpc/rpc/rpc.h	2014-03-22 13:20:52.000000000 +0100
@@ -79,9 +79,11 @@
 #define UDPMSGSIZE 8800
 #endif
 
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 extern int get_myaddress(struct sockaddr_in *);
-extern int bindresvport(int, struct sockaddr_in *) __THROW;
+extern int bindresvport(int, struct sockaddr_in *);
 extern int registerrpc(int, int, int, char *(*)(char [UDPMSGSIZE]),
     xdrproc_t, xdrproc_t);
 extern int callrpc(const char *, int, int, int, xdrproc_t, void *,
@@ -93,18 +95,24 @@ struct netbuf *uaddr2taddr(const struct
 
 struct sockaddr;
 extern int bindresvport_sa(int, struct sockaddr *);
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
 
 /*
  * The following are not exported interfaces, they are for internal library
  * and rpcbind use only. Do not use, they may change without notice.
  */
-__BEGIN_DECLS
+#ifdef __cplusplus
+extern "C" {
+#endif
 int __rpc_nconf2fd(const struct netconfig *);
 int __rpc_nconf2fd_flags(const struct netconfig *, int);
 int __rpc_nconf2sockinfo(const struct netconfig *, struct __rpc_sockinfo *);
 int __rpc_fd2sockinfo(int, struct __rpc_sockinfo *);
 u_int __rpc_get_t_size(int, int, int);
-__END_DECLS
+#ifdef __cplusplus
+}
+#endif
 
 #endif /* !_RPC_RPC_H */