	  sRefSet ss = uentry_getSpecialDefines (fcn);

	  sRefSet_allElements (ss, el)
	    {
	      sRef base = sRef_getRootBase (el);
	      sRef sr = sRef_updateSref (base);

	      sr = sRef_fixBase (el, sr);

	      if (sRef_isStateSpecial (sr))
		{
		  sRef_setUndefined (sr, fileloc_undefined);
		}

	      if (sRef_isStateSpecial (el))
		{
		  sRef_setDefined (el, fileloc_undefined);
		}

	      checkDefinesTrans (sr, el);
	    } end_sRefSet_allElements;

	  ss = uentry_getSpecialSets (fcn);

	  sRefSet_allElements (ss, el)
	    {
	      sRef base = sRef_getRootBase (el);
	      sRef sr = sRef_updateSref (base);

	      sr = sRef_fixBase (el, sr);

	      if (sRef_isStateSpecial (sr))
		{
		  sRef_setUndefined (sr, fileloc_undefined);
		}

	      if (sRef_isStateSpecial (el))
		{
		  sRef_setDefined (el, fileloc_undefined);
		}

	      checkSetsTrans (sr, el);
	    } end_sRefSet_allElements;

	  ss = uentry_getSpecialAllocates (fcn);

	  sRefSet_allElements (ss, el)
	    {
	      sRef base = sRef_getRootBase (el);
	      sRef sr = sRef_updateSref (base);
	      
	      sr = sRef_fixBase (el, sr);

	      if (sRef_isStateSpecial (sr) || sRef_isStateUndefined (sr))
		{
		  voptgenerror
		    (FLG_USERELEASED,
		     message ("Storage %q listed in allocates clauses is not allocated "
			      "at return point",
			      sRef_unparse (sr)),
		     currentloc);
		}
	      else
		{
		  if (sRef_isDead (sr))
		    {
		      if (optgenerror
			  (FLG_USERELEASED,
			   message ("Storage %q listed in allocates clauses is released "
				    "at return point",
				    sRef_unparse (sr)),
			   currentloc))
			{
			  sRef_showStateInfo (sr);
			}
		    }
		}
	    } end_sRefSet_allElements;

	  ss = uentry_getSpecialReleases (fcn);

	  sRefSet_allElements (ss, el)
	    {
	      sRef base = sRef_getRootBase (el);
	      sRef sr = sRef_updateSref (base);

	      sr = sRef_fixBase (el, sr);

	      if (sRef_isDead (sr))
		{
		  ;
		}
	      else
		{
		  voptgenerror 
		    (FLG_MUSTFREE,
		     message 
		     ("Storage %q listed in releases clause not released before return",
		      sRef_unparse (sr)),
		     currentloc);
		}
	    } end_sRefSet_allElements;
