Re: [gtkmm] status of memberfunctions of Glib::TimeVal

> Hi Stephan!
> Feel free to write a patch that adds the functions you mention
> below. Make a "cvs diff -u3" against current cvs and attach the
> patch to a new bug report in bugzilla. As long as we don't have
> a stable release, small, useful API additions usually get approved.

Even after stable certain additions can be made,  I think there was a
document on the Qt site which covers this, but the bookmark I had 
no longer exists.

Just for future reference these are what can be done...
  - add a new non-virtual function 
  - add a new inline function (such as operator +)
  - add a new overload on existing non-virtual function.
  - add a new data type
  - add a const version of a non-virtual function

What can't be done once stable (without breaking binaries)
  - remove or add virtual function
  - remove an existing non-virtual function (*)
  - convert non-virtual to inline (*)
  - change the return or arguments on existing functions
  - remove or add a new data member to an existing structure
  - change the inheritance tree
  - mark a function const  (changes mangle name)

Basically, you must keep all structures the same size, preserve the
virtual tables, and keep the existing functions. 

(*) these can be done, but must use #if to compile the functions 
into library.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]