Hi,
> In my opinion this makes the code very unclear I agree, some time ago there was some discussion on using this vs some exception mechanisms [1]. I still think this is the best choice, but ideas on how to simplify this are welcome! > and I am thinking about > adding the following macro to address this problem: > #define DO_IF_SUCCESS(status, call_func) ((status) == CELIX_SUCCESS) ? > (call_func) : (status) > Look good and usable. Makes the code much cleaner. A drawback I see for now is that the macro executes the expression for each use. Using the nested if's the code would fall through to the end. I am not sure what the consequence of this is, but probably not that large. > I would like to hear some opinions about this solution and if it is > something which can be added to celix_errno.h ? > celix_errno.h would be the right place to add this. Feel free to create an issue for this (optionally with patch). Of no one objects I can add it without an impact on the existing code base. [1]: http://incubator.markmail.org/search/list:org.apache.incubator.celix-dev+exception+handling -- Met vriendelijke groet, Alexander Broekhuis
