diff --git a/preprocessor/ParsingDriver.cc b/preprocessor/ParsingDriver.cc
index d539fb0e3a01ffcc97538dc2e7963fc5e147d803..aff396f0ac9edcebeed56b888237bd0dd81eab28 100644
--- a/preprocessor/ParsingDriver.cc
+++ b/preprocessor/ParsingDriver.cc
@@ -304,7 +304,10 @@ ParsingDriver::add_expression_variable(string *name)
 void
 ParsingDriver::declare_nonstationary_var(string *name, string *tex_name)
 {
-  declare_endogenous(new string(*name), tex_name);
+  if (tex_name != NULL)
+    declare_endogenous(new string(*name), new string(*tex_name));
+  else
+    declare_endogenous(new string(*name), tex_name);
   declared_nonstationary_vars.push_back(mod_file->symbol_table.getID(*name));
   mod_file->nonstationary_variables = true;
   delete name;