AffineParallelOp::getLoopBody() trigger build error: call to implicitly-deleted copy constructor of 'mlir::Region'

I try to get the loop body region of created affine.parallel op.

    auto op =  builder.create<AffineParallelOp>(loc, resultTypes, reductions, ranges);
    // ...
   
    auto loopBody = op.getLoopBody() ;
    auto block = builder.createBlock(&loopBody);

    builder.setInsertionPointToStart(block);
    { 
        //... building op region
    }
    builder.restoreInsertionPoint(point);

Unfortunately, it failed to build

error: call to implicitly-deleted copy constructor of 'mlir::Region'
    auto loopBody = op.getLoopBody() ;
         ^          ~~~~~~~~~~~~~~~~
/workspace/mlir-fuzz/mlir/include/mlir/IR/Region.h:315:17: note: copy constructor of 'Region' is implicitly deleted because field 'blocks' has a deleted copy constructor
  BlockListType blocks;
                ^
/workspace/mlir-fuzz/llvm/include/llvm/ADT/ilist.h:398:3: note: 'iplist' has been explicitly marked deleted here
  iplist(const iplist &X) = delete;

You’ll want to use auto& loopBody = here.