2018-02-26 14:42-0800, Matthias Kaehlcke:
> The type 'enum kvm_reg_ex' is an extension of 'enum kvm_reg', however
> the extension is only semantical and the compiler doesn't know about the
> relationship between the two types. In kvm_pdptr_read() a value of the
> extended type is passed to kvm_x86_ops->cache_reg(), which expects a
> value of the base type. Clang raises the following warning about the
> type mismatch:

Yeah, expressing this in C type system seems impossible.

> arch/x86/kvm/kvm_cache_regs.h:44:32: warning: implicit conversion from
>   enumeration type 'enum kvm_reg_ex' to different enumeration type
>   'enum kvm_reg' [-Wenum-conversion]
>     kvm_x86_ops->cache_reg(vcpu, VCPU_EXREG_PDPTR);
> 
> Cast VCPU_EXREG_PDPTR to 'enum kvm_reg' to make the compiler happy.
> 
> Signed-off-by: Matthias Kaehlcke <m...@chromium.org>
> ---

Applied, thanks.

Reply via email to