> Nilay, I apologize for the confusion here. It seems that Nate and I are > suggesting you go in two different directions in terms of the operator<<. I > personally wanted to get away from the operator<< overloading, so that Ruby > objects looked more similar to most M5 objects. Especially because most of > these operator<< functions aren't very useful. > > Nate, could you elaborate why you'd prefer the operator<< functions versus > the print functions? My motivation for removing the operator<< functions was > to improve our consistency, but if you have a better reason for removing the > print functions instead, I'm willing to change my mind.
As Steve said, at the bottom of cprintf/DPRINTF, the system uses operator<<, so if you use %s, it can handle printing it. For example. If you had an object Foo that overloaded operator<< and an instance foo of that object, you could simply do DPRINTF(Flag, "%s", foo) Instead of what's happening with what you have now of doing: DPRINTF(Flag, "%s", foo.print_str()); Furthermore, the printing will be a lot faster with operator<< and it's more versatile. In my opinion, print/print_str should both be gotten rid of and operator<< should be what we use. In short. operator<< is good. Using it with cout is bad. Make sense? Nate _______________________________________________ m5-dev mailing list [email protected] http://m5sim.org/mailman/listinfo/m5-dev
