X-Git-Url: http://andersk.mit.edu/gitweb/splint.git/blobdiff_plain/1b8ae6904556859bbe91aadf35b8adcc1a0611ce..508533c52d02429894d89b95224577d8e3cf3c48:/src/transferChecks.c diff --git a/src/transferChecks.c b/src/transferChecks.c index 30f9a98..4efa027 100644 --- a/src/transferChecks.c +++ b/src/transferChecks.c @@ -17,8 +17,8 @@ ** the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, ** MA 02111-1307, USA. ** -** For information on splint: splint@cs.virginia.edu -** To report a bug: splint-bug@cs.virginia.edu +** For information on splint: info@splint.org +** To report a bug: splint-bug@splint.org ** For more information: http://www.splint.org */ /* @@ -505,7 +505,8 @@ checkCompletelyDefined (exprNode fexp, /*@exposed@*/ sRef fref, sRef ofref, { ; /* no error (will be a definition error) */ } - else if (transferType == TT_DOASSIGN) + else if (transferType == TT_DOASSIGN + || transferType == TT_FIELDASSIGN) /* evans 2002-02-05 - added TT_FIELDASSIGN */ { ; /* no error */ } @@ -775,6 +776,7 @@ checkCompletelyDefined (exprNode fexp, /*@exposed@*/ sRef fref, sRef ofref, else { llassert (transferType == TT_DOASSIGN + || transferType == TT_FIELDASSIGN /* evans 2002-02-05: no warnings for local fields */ || transferType == TT_GLOBINIT || transferType == TT_LEAVETRANS); } @@ -1722,7 +1724,8 @@ transferChecks_return (exprNode fexp, uentry rval) DPRINTF (("el: %s / %s", sRef_unparse (el), sRef_unparse (base))); - if (sRef_isResult (base)) + if (sRef_isResult (base) + && !sRef_isDefinitelyNull (fref)) /* evans 2002-07-22: don't report allocation errors for null results */ { sRef sr = sRef_fixBase (el, fref);