nonconsuming NetSecurityObligations: ()
   with
      fundId: Text
      investor: Party
      settlementDate: Date
      settlementObligations: [ContractId SettlementObligation]
   do 
      forA settlementObligations (\obligationCid -> do
          obligation <- fetch obligationCid
          assert (obligation.investor == investor && obligation.fundId == fundId))
      return ()
The forA statement gives me the following warning -
Warning: Use forA_
Found:
  forA
    settlementObligations
    (\ obligationCid
       -> do obligation <- fetch obligationCid
             assert
               ((DA.Internal.Record.getField @"investor" obligation) == investor
                  && (DA.Internal.Record.getField @"fundId" obligation) == fundId))
Perhaps:
  forA_
    settlementObligations
    (\ obligationCid
       -> do obligation <- fetch obligationCid
             assert
               ((DA.Internal.Record.getField @"investor" obligation) == investor
                  && (DA.Internal.Record.getField @"fundId" obligation) == fundId))
Warning: Use forA_
Found:
  forA
    settlementObligations
    (\ obligationCid
       -> do obligation <- fetch obligationCid
             assert
               ((DA.Internal.Record.getField @"investor" obligation) == investor
                  && (DA.Internal.Record.getField @"fundId" obligation) == fundId))
Perhaps:
  forA_
    settlementObligations
    (\ obligationCid
       -> do obligation <- fetch obligationCid
             assert
               ((DA.Internal.Record.getField @"investor" obligation) == investor
                  && (DA.Internal.Record.getField @"fundId" obligation) == fundId))
Warning changes to a Variable not in scope: forA_ error upon changing it to the following as per the suggestion -
do 
    forA_ settlementObligations (\obligationCid -> do
        obligation <- fetch obligationCid
        assert (obligation.investor == investor && obligation.fundId == fundId))
Face the same warning with mapA as well - not sure I understand why.