From: Bob Carragher (bobthedancer_at_yahoo.com)
Date: Tue Aug 21 2001 - 07:30:13 BST
Rod Armstrong <rod_at_san-jose.tt.slb.com> sez: Bob-> In order the raise the "tragically under-publicized" Bob-> state of ups, I updated the entry in http://freshmeat.net/projects/ups/ Bob-> with a screen shot and info on beta2. Feel free to vote or add comments - Bob-> it currently has none. This is a good start. However, there is one big "problem" that I feel might be preventing ups' adoption in large development projects: the handling of the #pragma constructs. (This is certainly The Big Reason that "ddd" is preferred over ups at our company.) Specifically, the "#pragma interface"/"#pragma implementation" construct in the .h/.cpp files causes problems when ups tries to display the structure of a class or struct which is not defined in the same file as the code/variable being viewed. (The class or struct is declared to be an "undefined struct.") The main reason that this #pragma construct is used is to help reduce the size of the executables. Quoting from the relevent GCC info page, this forces the definition of certain information, "backup copies of inline member functions, debugging information, and the internal tables that implement virtual functions," to occur only in the .cpp file corresponding to the .h file. (More or less.) There are other uses for this form of #pragma, but this is the main reason we use it because it reduces our program binary's size by >60%. I have checked this with versions 3.35 and 3.37-beta2, and both show this "problem." Would this take a major project to fix, or is it a relatively simple fix? Thanks! Bob
This archive was generated by hypermail 2.1.4 : Wed Feb 13 2002 - 22:11:36 GMT