summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorEmil Renner Berthing <esmil@mailme.dk>2013-11-20 22:33:34 +0100
committerEmil Renner Berthing <esmil@mailme.dk>2013-11-21 10:01:57 +0100
commitc87c5a5619b1ece8ff4522dcfb688191610526f9 (patch)
tree6b1250bda4d5d163d9bdcfdd3350c8ea868cfea3 /bin
parentb02a0cd8702ba794ff5c7eddfbb40d005d8a1e56 (diff)
downloadlem-c87c5a5619b1ece8ff4522dcfb688191610526f9.tar.gz
lem-c87c5a5619b1ece8ff4522dcfb688191610526f9.tar.xz
lem-c87c5a5619b1ece8ff4522dcfb688191610526f9.zip
fix pragmas for old GCCs
Diffstat (limited to 'bin')
-rw-r--r--bin/lem.c14
-rw-r--r--bin/pool.c14
2 files changed, 20 insertions, 8 deletions
diff --git a/bin/lem.c b/bin/lem.c
index 8ee2e8a..0f660e9 100644
--- a/bin/lem.c
+++ b/bin/lem.c
@@ -323,6 +323,15 @@ queue_file(int argc, char *argv[], int fidx)
return 0;
}
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wstrict-aliasing"
+static inline void
+runqueue_wait_init(void)
+{
+ ev_idle_init(&rq.w, runqueue_pop);
+}
+#pragma GCC diagnostic pop
+
int
main(int argc, char *argv[])
{
@@ -355,10 +364,7 @@ main(int argc, char *argv[])
lua_newtable(L);
/* initialize runqueue */
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wstrict-aliasing"
- ev_idle_init(&rq.w, runqueue_pop);
-#pragma GCC diagnostic pop
+ runqueue_wait_init();
ev_idle_start(LEM_ &rq.w);
rq.queue = lem_xmalloc(LEM_INITIAL_QUEUESIZE
* sizeof(struct lem_runqueue_slot));
diff --git a/bin/pool.c b/bin/pool.c
index 1d8dabd..e30bc0c 100644
--- a/bin/pool.c
+++ b/bin/pool.c
@@ -110,6 +110,15 @@ pool_cb(EV_P_ struct ev_async *w, int revents)
ev_async_stop(EV_A_ w);
}
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Wstrict-aliasing"
+static inline void
+pool_watch_init(void)
+{
+ ev_async_init(&pool_watch, pool_cb);
+}
+#pragma GCC diagnostic pop
+
static int
pool_init(void)
{
@@ -128,10 +137,7 @@ pool_init(void)
pool_done = NULL;
*/
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wstrict-aliasing"
- ev_async_init(&pool_watch, pool_cb);
-#pragma GCC diagnostic pop
+ pool_watch_init();
ret = pthread_mutex_init(&pool_mutex, NULL);
if (ret == 0)