--- date/date_elements.inc.old	2010-11-18 20:52:22.006120575 -0800
+++ date/date_elements.inc	2010-11-18 20:54:31.146112026 -0800
@@ -377,7 +377,7 @@
   $delta = $element['#delta'];
   
   // If the whole field is empty and that's OK, stop now.
-  if (empty($element['#post'][$field_name]) && !$element['#required']) {
+  if (empty($element['#post'][$field_name]) && (!$element['#required'] || (isset($element['#access']) && !$element['#access']))) {
     return;
   }
   
