diff --git a/include/dynamic-graph/command-bind.h b/include/dynamic-graph/command-bind.h
index ed8350e073d9f1aafa3846fea28ebefe78aa371c..751c21736f94dcc62bcbaefec8a18a54a74cc4fe 100644
--- a/include/dynamic-graph/command-bind.h
+++ b/include/dynamic-graph/command-bind.h
@@ -38,15 +38,13 @@
 namespace dynamicgraph {
   namespace command {
 
-#define COMMAND_EMPTY_ARG std::vector<Value::Type>()
-
     template <class E >
       struct CommandVoid0
       : public Command
     {
     CommandVoid0(E& entity, boost::function<void(void)> function,
 		 const std::string& docString)
-      :Command(entity, COMMAND_EMPTY_ARG, docString)
+      :Command(entity, EMPTY_ARG, docString)
 	,fptr(function)
       {}
 
@@ -97,8 +95,6 @@ namespace dynamicgraph {
 namespace dynamicgraph {
   namespace command {
 
-#define COMMAND_EMPTY_ARG std::vector<Value::Type>()
-
     template <class E,typename T >
       struct CommandVoid1
       : public Command
diff --git a/include/dynamic-graph/command.h b/include/dynamic-graph/command.h
index cbfd7a975e582ff5eac1f6aa8a08577865380fe9..ac602054cfc06786545dd49740d52de899c96fed 100644
--- a/include/dynamic-graph/command.h
+++ b/include/dynamic-graph/command.h
@@ -70,6 +70,8 @@ namespace dynamicgraph {
       std::vector<Value::Type> valueTypeVector_;
       std::vector<Value> valueVector_;
       std::string docstring_;
+    public:
+      static const std::vector<Value::Type> EMPTY_ARG;
     };
   } // namespace command
 } // namespace dynamicgraph
diff --git a/src/command/command.cpp b/src/command/command.cpp
index 2c71ef0e06a9cc3cb4cac4fa31b854575f0b848b..95fe2bbb64ae9abd320ff11194aed1fb0dcbec39 100644
--- a/src/command/command.cpp
+++ b/src/command/command.cpp
@@ -22,6 +22,9 @@
 namespace dynamicgraph {
   namespace command {
 
+    const std::vector<Value::Type> Command::EMPTY_ARG = std::vector<Value::Type>();
+
+
     Command::~Command() {}
     Command::Command(Entity& entity,
 		     const std::vector<Value::Type>& valueTypes,