A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Getting rid of C exceptions
[simgrid.git]
/
src
/
msg
/
msg_mailbox.cpp
diff --git
a/src/msg/msg_mailbox.cpp
b/src/msg/msg_mailbox.cpp
index
1594821
..
06413a6
100644
(file)
--- a/
src/msg/msg_mailbox.cpp
+++ b/
src/msg/msg_mailbox.cpp
@@
-18,7
+18,7
@@
msg_mailbox_t MSG_mailbox_new(const char *alias)
int MSG_mailbox_is_empty(msg_mailbox_t mailbox)
{
int MSG_mailbox_is_empty(msg_mailbox_t mailbox)
{
- return (
NULL
== simcall_mbox_front(mailbox));
+ return (
nullptr
== simcall_mbox_front(mailbox));
}
msg_task_t MSG_mailbox_front(msg_mailbox_t mailbox)
}
msg_task_t MSG_mailbox_front(msg_mailbox_t mailbox)
@@
-26,7
+26,7
@@
msg_task_t MSG_mailbox_front(msg_mailbox_t mailbox)
simgrid::simix::Comm* comm = static_cast<simgrid::simix::Comm*>(simcall_mbox_front(mailbox));
if (!comm)
simgrid::simix::Comm* comm = static_cast<simgrid::simix::Comm*>(simcall_mbox_front(mailbox));
if (!comm)
- return
NULL
;
+ return
nullptr
;
return (msg_task_t) comm->src_data;
}
return (msg_task_t) comm->src_data;
}
@@
-90,7
+90,6
@@
msg_error_t MSG_mailbox_get_task_ext(msg_mailbox_t mailbox, msg_task_t *task, ms
msg_error_t MSG_mailbox_get_task_ext_bounded(msg_mailbox_t mailbox, msg_task_t * task, msg_host_t host, double timeout,
double rate)
{
msg_error_t MSG_mailbox_get_task_ext_bounded(msg_mailbox_t mailbox, msg_task_t * task, msg_host_t host, double timeout,
double rate)
{
- xbt_ex_t e;
msg_error_t ret = MSG_OK;
/* We no longer support getting a task from a specific host */
if (host)
msg_error_t ret = MSG_OK;
/* We no longer support getting a task from a specific host */
if (host)
@@
-106,14
+105,12
@@
msg_error_t MSG_mailbox_get_task_ext_bounded(msg_mailbox_t mailbox, msg_task_t *
XBT_WARN("Asked to write the received task in a non empty struct -- proceeding.");
/* Try to receive it by calling SIMIX network layer */
XBT_WARN("Asked to write the received task in a non empty struct -- proceeding.");
/* Try to receive it by calling SIMIX network layer */
-
TRY
{
- simcall_comm_recv(MSG_process_self(), mailbox, task,
NULL, NULL, NULL, NULL
, timeout, rate);
+
try
{
+ simcall_comm_recv(MSG_process_self(), mailbox, task,
nullptr, nullptr, nullptr, nullptr
, timeout, rate);
XBT_DEBUG("Got task %s from %p",(*task)->name,mailbox);
XBT_DEBUG("Got task %s from %p",(*task)->name,mailbox);
- if (msg_global->debug_multiple_use && (*task)->simdata->isused!=0)
- xbt_ex_free(*(xbt_ex_t*)(*task)->simdata->isused);
- (*task)->simdata->isused = 0;
+ (*task)->simdata->setNotUsed();
}
}
-
CATCH(
e) {
+
catch (xbt_ex&
e) {
switch (e.category) {
case cancel_error:
ret = MSG_HOST_FAILURE;
switch (e.category) {
case cancel_error:
ret = MSG_HOST_FAILURE;
@@
-128,9
+125,8
@@
msg_error_t MSG_mailbox_get_task_ext_bounded(msg_mailbox_t mailbox, msg_task_t *
ret = MSG_HOST_FAILURE;
break;
default:
ret = MSG_HOST_FAILURE;
break;
default:
-
RETHROW
;
+
throw
;
}
}
- xbt_ex_free(e);
}
if (ret != MSG_HOST_FAILURE && ret != MSG_TRANSFER_FAILURE && ret != MSG_TIMEOUT) {
}
if (ret != MSG_HOST_FAILURE && ret != MSG_TRANSFER_FAILURE && ret != MSG_TIMEOUT) {