Index: CMT/v1r25-branch/ChangeLog
===================================================================
--- CMT/v1r25-branch/ChangeLog	(revision 665)
+++ CMT/v1r25-branch/ChangeLog	(revision 666)
@@ -1,2 +1,10 @@
+2014-01-25    <rybkin@lal.in2p3.fr> 523
+
+	* source/cmt_symbol.cxx: In class SetBuilder, PathBuilder functions build,
+	do not set error for environment variable access if set or path is defined
+	in requirements
+	* source/cmt_error.cxx: In class CmtError function print, output diagnostic
+	messages for error called "warning" as warnings
+	
 2014-01-10    <rybkin@lal.in2p3.fr> 522
 
@@ -298,5 +306,5 @@
 	fill_selection, fill_exclusion functions to implement enhanced handling of
 	special CMTHOME, CMTUSERCONTEXT projects packages (visited if in current
-	project only) and and special depth values (0: CMTUSERCONTEXT project
+	project only) or with special depth values (0: CMTUSERCONTEXT project
 	packages only, -1: CMTHOME project packages only), in
 	do_check_configuration function, check tags from CmtContext m_extra_tags,
@@ -310,5 +318,5 @@
 	use_current_package, use_extra_file functions do not attempt to locate
 	current package if current use located already, factor out
-	Pattern::apply_all_globalsize and Tag::restore_tree calls into separate
+	Pattern::apply_all_globals and Tag::restore_tree calls into separate
 	apply_globals function called after all requirements are read, in
 	use_special_requirements function set special use style, structuring_style,
Index: CMT/v1r25-branch/source/cmt_error.cxx
===================================================================
--- CMT/v1r25-branch/source/cmt_error.cxx	(revision 665)
+++ CMT/v1r25-branch/source/cmt_error.cxx	(revision 666)
@@ -174,5 +174,8 @@
   cerr << "CMT> Error: " << get_error_name (e.get_code ()) << " : " << e.get_text () << endl;
   */
-  CmtMessage::error (get_last_error ());
+  if (CmtError::get_last_error_code () != CmtError::warning)
+    CmtMessage::error (get_last_error ());
+  else
+    CmtMessage::warning (get_last_error ());
 }
 
Index: CMT/v1r25-branch/source/cmt_symbol.cxx
===================================================================
--- CMT/v1r25-branch/source/cmt_symbol.cxx	(revision 665)
+++ CMT/v1r25-branch/source/cmt_symbol.cxx	(revision 666)
@@ -2369,4 +2369,11 @@
                 resolve_value (new_value, symbol.name, temp);
                 temp = new_value;
+
+		// We clear the error since the set is defined in requirements
+		// and the environment variable ought not to have been used
+		if (CmtError::get_last_error_code () == CmtError::warning &&
+		    CmtError::get_last_error () ==
+		    CmtError::get_error_name (CmtError::warning) + ": " "getenv (" + symbol.name + ") denied")
+		  CmtError::clear ();
               }
             else if (temp == "")
@@ -2391,5 +2398,6 @@
 		    CmtError::set (CmtError::warning,
 				   "getenv (" + symbol.name + ") denied");
-		    return "";
+		    //		    return "";
+		    // We will clear the error if the set is defined in requirements
 		  }
               }
@@ -2680,5 +2688,6 @@
 		    CmtError::set (CmtError::warning,
 				   "getenv (" + symbol.name + ") denied");
-		    return "";
+		    //		    return "";
+		    // We will clear the error if the path is defined in requirements
 		  }
 
@@ -2722,4 +2731,11 @@
                 //temp = new_value;
 		filter_path_value (symbol, temp_vector);
+
+		// We clear the error since the path is defined in requirements
+		// and the environment variable ought not to have been used
+		if (CmtError::get_last_error_code () == CmtError::warning &&
+		    CmtError::get_last_error () ==
+		    CmtError::get_error_name (CmtError::warning) + ": " "getenv (" + symbol.name + ") denied")
+		  CmtError::clear ();
               }
 
@@ -3819,5 +3835,8 @@
 		  {
 		    // print error occurred before value expansion
-		    CmtMessage::error (msg);
+		    if (code != CmtError::warning)
+		      CmtMessage::error (msg);
+		    else
+		      CmtMessage::warning (msg);
 		  }
 		// We keep CmtError::warning to indicate that
