diff --git a/include/cln/string.h b/include/cln/string.h
index c316f04..f7da4a2 100644
--- a/include/cln/string.h
+++ b/include/cln/string.h
@@ -124,10 +124,9 @@ inline cl_string::operator cl_heap_string* () const
 }
 inline cl_string::cl_string ()
 {
-	extern const cl_string cl_null_string;
-	pointer = (cl_heap_string*) cl_null_string;
+	static const cl_string cl_null_st(NULL, 0);
+	pointer = (cl_heap_string*) cl_null_st;
 }
-CL_REQUIRE(cl_st_null)
 
 // Hash code.
 extern unsigned long hashcode (const cl_string& str);
diff --git a/src/base/string/cl_st_null.cc b/src/base/string/cl_st_null.cc
index e62b0a1..3ba0fb4 100644
--- a/src/base/string/cl_st_null.cc
+++ b/src/base/string/cl_st_null.cc
@@ -3,13 +3,12 @@
 // General includes.
 #include "cl_sysdep.h"
 
-CL_PROVIDE(cl_st_null)
-
 // Specification.
 #include "cln/string.h"
 
 namespace cln {
 
+#warning "Please remove me"
 extern const cl_string cl_null_string;
 
 }  // namespace cln
@@ -22,4 +21,3 @@ const cl_string cl_null_string = cl_string(NULL,0);
 
 }  // namespace cln
 
-CL_PROVIDE_END(cl_st_null)