Hello Tom, On Thu, Feb 6, 2014 at 9:18 AM, Tom Hacohen <tom.haco...@samsung.com> wrote: >
[snip] > 2. Have you taken pre-cautions into making sure generated C++ API/ABI is > solid? I know C++ can be funny with ABI, and you have to assume people > are going to create classes inheriting from your API, they can not break > every time you re-generate API, and also, they can't break when we > change something in C (that doesn't break API/ABI), like adding a new > class, or whatever. Adding new functions to an Eo class will add member functions for the wrappers. This will, invariably, be an ODR (One-Definition Rule) violation if both the old and the new definitions are present in the same application. But, since the wrappers aren't polymorphic it is possible that it doesn't break ABI in GCC and possibly other compilers, if we rely on implementation defined behavior. We would have to research this possibility. OTOH, adding or modifiying the inheritance of classes will probably break ABI for C++ code. Both possibilities aren't ABI-breaking change for C code, AFAIU. > -- > Tom. Regards, -- Felipe Magno de Almeida ------------------------------------------------------------------------------ Managing the Performance of Cloud-Based Applications Take advantage of what the Cloud has to offer - Avoid Common Pitfalls. Read the Whitepaper. http://pubads.g.doubleclick.net/gampad/clk?id=121051231&iu=/4140/ostg.clktrk _______________________________________________ enlightenment-devel mailing list enlightenment-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-devel