>>>> >>>> #endif >>> >>> Why not use typedefs.h? >> >> See Markus's reply. But, maybe it's even better to use S390CPU* and >> include target/s390x/cpu-qom.h, which by design provides as little >> definitions as needed. > > I don't see an argument against moving typedef CPUS390XState to > typedefs.h in Markus' reply. I see one argument for it (reducing > the need for non-cyclic includes). > > cpu-qom.h includes cpu.h, so I don't know why using S390CPU* > would solve any problem. I don't disagree about changing the > function to use S390CPU* eventually, but it would still require > us make a choice between: a) including the header where the > typedef name is declared (cpu.h or cpu-qom.h); or b) moving the > typedef name declaration to typedefs.h.
It includes qom/cpu.h, not cpu.h. That's why using cpu-qom.h for such typedefs works (see v4). Thanks! -- Thanks, David