>> A pointer was assigned to a variable. The same pointer was used for
>> the destination parameter of a memcpy() call.
>> This function is documented in the way that the same value is returned.
>> Thus convert two separate statements into a direct variable assignment for
>> the return value from a memory copy action.
…>> +++ b/arch/powerpc/kvm/powerpc.c
>> @@ -216,8 +216,7 @@ int kvmppc_kvm_pv(struct kvm_vcpu *vcpu)
>>  
>>                      shared &= PAGE_MASK;
>>                      shared |= vcpu->arch.magic_page_pa & 0xf000;
>> -                    new_shared = (void*)shared;
>> -                    memcpy(new_shared, old_shared, 0x1000);
>> +                    new_shared = memcpy(shared, old_shared, 0x1000);
>>                      vcpu->arch.shared = new_shared;
>>              }
>>  #endif
> 
> This patch does not compile
…> arch/powerpc/kvm/powerpc.c: In function `kvmppc_kvm_pv´:
> arch/powerpc/kvm/powerpc.c:219:45: error: passing argument 1 of 
> `__builtin_dynamic_object_size´ makes pointer from integer without a cast 
> [-Wint-conversion]
…

Will another subsequent patch variant become relevant for the proposed
source code transformation approach?

Regards,
Markus

Reply via email to