I believe that there may be an extra "const" in the following function declaration: --- nsIFrame.h-orig Sat Oct 31 00:53:23 1998 +++ nsIFrame.h Sat Oct 31 00:53:36 1998 @@ -169,7 +169,7 @@ /** * Get the style data associated with this frame. */ - NS_IMETHOD GetStyleData(nsStyleStructID aSID, const nsStyleStruct*& aStyleStruct) const = 0; + NS_IMETHOD GetStyleData(nsStyleStructID aSID, nsStyleStruct*& aStyleStruct) const = 0; /** * Accessor functions for geometric and content parent.
Nope. The method is correctly defined as const since it doesn't and can't modify the frame. The out param nsStyleStruct is also correctly defined as const since it is an immutable structure after the style resolution process (which is over before the frame gets it). Note that there are mutable pathways into the nsStyleStructs, but this isn't one of them.