value types per se do not change story of C interop much, other than passing structs by value, which is not so critical feature AFAIK. Generally, one could think of value types as mostly performance optimization, which could be achieved by smart compiler already.