Paolo Bonzini wrote: >> Unfortunately that's not possible in the case of virStrcpyStatic(). Because >> virStrcpyStatic() does a sizeof(dest), you have to have the original char >> foo[123], not a char *, to get something meaningful. That means that it has to >> either be a macro or not exist at all. (I could be convinced of the latter, but >> I found it convenient when converting a number of these locations) >> >> I could make virStrcpy a small function, though. > > Yes, that would be quite nice. It would remove the multiple-evaluation > problem from virStrcpyStatic too. > > In the followup I'd also like to have macro arguments parenthesized: > > #define virStrcpyStatic(dest, src) \ > virStrcpy((dest), (src), sizeof(dest)) > > I don't remember off the top of my head the case in which that would be > a problem (since these are just function arguments), but I'm sure Jim > Meyering could enlighten us. ;-) OK, I've committed this now, with the changes suggested by DV and Paolo. Please take a look and let me know if the code I committed works for everyone. -- Chris Lalancette -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list