Mapping methods with several source parameters: Impossible to ignore attributes of an object used as parameter while it is directly used as source

Expected behavior

I expected MapStruct to ignore the attributes of the secondaryEntity:

import javax.annotation.processing.Generated;
import poc.dtos.Dto;
import poc.entities.MainEntity;
import poc.entities.SecondaryEntity;

@Generated(
    value = "org.mapstruct.ap.MappingProcessor",
    date = "2023-03-10T14:33:10+0100",
    comments = "version: 1.5.3.Final, compiler: IncrementalProcessingEnvironment from gradle-language-java-8.0.2.jar, environment: Java 17.0.4 (Eclipse Adoptium)"
)
public class MainEntityMapperImpl implements MainEntityMapper {

    @Override
    public MainEntity map(Dto dto, SecondaryEntity secondaryEntity) {
        if ( dto == null && secondaryEntity == null ) {
            return null;
        }

        MainEntity mainEntity = new MainEntity();

        if ( dto != null ) {
            mainEntity.setMainEntityAttribute( dto.getDtoAttribute() );
        }
        if ( secondaryEntity != null ) {
            mainEntity.setOtherEntity( secondaryEntity );
//--- I expected MapStruct to not generate this line:
           mainEntity.setEntityCommonAttribute( secondaryEntity.getEntityCommonAttribute() );
//---
        }

        return mainEntity;
    }
}

Actual behavior

MapStruct generates the following implementation which maps an attribute of secondaryEntity to the attribute of the same name in mainEntity:

import javax.annotation.processing.Generated;
import poc.dtos.Dto;
import poc.entities.MainEntity;
import poc.entities.SecondaryEntity;

@Generated(
    value = "org.mapstruct.ap.MappingProcessor",
    date = "2023-03-10T14:33:10+0100",
    comments = "version: 1.5.3.Final, compiler: IncrementalProcessingEnvironment from gradle-language-java-8.0.2.jar, environment: Java 17.0.4 (Eclipse Adoptium)"
)
public class MainEntityMapperImpl implements MainEntityMapper {

    @Override
    public MainEntity map(Dto dto, SecondaryEntity secondaryEntity) {
        if ( dto == null && secondaryEntity == null ) {
            return null;
        }

        MainEntity mainEntity = new MainEntity();

        if ( dto != null ) {
            mainEntity.setMainEntityAttribute( dto.getDtoAttribute() );
        }
        if ( secondaryEntity != null ) {
            mainEntity.setOtherEntity( secondaryEntity );
//---- HERE IS THE PROBLEM:
            mainEntity.setEntityCommonAttribute( secondaryEntity.getEntityCommonAttribute() );
//----
        }

        return mainEntity;
    }
}

Steps to reproduce the problem

package poc.dtos;

public class Dto {

  private String dtoAttribute;

  public String getDtoAttribute() {
    return dtoAttribute;
  }

  public void setDtoAttribute(String dtoAttribute) {
    this.dtoAttribute = dtoAttribute;
  }
}
package poc.entities;

public class MainEntity {

  private String mainEntityAttribute;
  private String entityCommonAttribute;
  private SecondaryEntity otherEntity;

  public String getMainEntityAttribute() {
    return mainEntityAttribute;
  }

  public void setMainEntityAttribute(String mainEntityAttribute) {
    this.mainEntityAttribute = mainEntityAttribute;
  }

  public String getEntityCommonAttribute() {
    return entityCommonAttribute;
  }

  public void setEntityCommonAttribute(String entityCommonAttribute) {
    this.entityCommonAttribute = entityCommonAttribute;
  }

  public SecondaryEntity getOtherEntity() {
    return otherEntity;
  }

  public void setOtherEntity(SecondaryEntity otherEntity) {
    this.otherEntity = otherEntity;
  }
}
package poc.entities;

public class SecondaryEntity {

  private String entityCommonAttribute;

  public String getEntityCommonAttribute() {
    return entityCommonAttribute;
  }

  public void setEntityCommonAttribute(String entityCommonAttribute) {
    this.entityCommonAttribute = entityCommonAttribute;
  }
}
package poc.mappers;

import org.mapstruct.Mapper;
import org.mapstruct.Mapping;
import poc.dtos.Dto;
import poc.entities.MainEntity;
import poc.entities.SecondaryEntity;

@Mapper
public interface MainEntityMapper {

  @Mapping(source = "dto.dtoAttribute", target = "mainEntityAttribute")
  @Mapping(source = "secondaryEntity", target = "otherEntity")
  @Mapping(source = "secondaryEntity", target = ".", ignore = true)
  MainEntity map(Dto dto, SecondaryEntity secondaryEntity);

}

MapStruct Version

MapStruct 1.5.3.Final