Resent, as I did not get any return on that. FYI, concerning all the comments I regularly get about gcc2, I just checked and libroot (which contains our libc) does use some C++ for its own implementation. So I will definitely not even try to build parts with gcc4 and others with gcc2, that would be asking for trouble.
For the record, the gcc2 requirement comes from the replicant interface, which essentially means dlopen()ing NS from another process. Adding a replicant to the desktop, which is one possible use, means loading it from Tracker, which for now is compiled with gcc2 because of binary compatibility with 3rd-party addons. The most important use though is in the BeHappy documentation browser <https://github.com/HaikuArchives/BeHappy>, which could probably be built with gcc4 only if really needed. For now replicants in Tracker have some issues (like, adding a 2nd one crashes on removal). I'm willing to consider dropping gcc2 support if I can't get the replicant to work properly in Tracker in which case it would only be of use in BeHappy which doesn't have the gcc2 requirement. But I'm not there yet, since I know the reason it crashes, but have been busy coping with frontend changes, and I'll first work on the CI support. Again, I never asked anyone yet to fix their own code, and I'm spending my own time on cleaning up behind, although I would rather spend it on other things, and it's not like the diffs are that huge everytime (although admittedly I did not get this one right at first because I don't sleep very well those days). François. -------- Original Message -------- Subject: [PATCH] [libcss] C89 Date: Wed, 18 Dec 2013 15:52:51 +0100 From: François Revol <re...@free.fr> To: netsurf-dev@netsurf-browser.org --- src/select/hash.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/select/hash.c b/src/select/hash.c index 6fc08d7..9f83cfb 100644 --- a/src/select/hash.c +++ b/src/select/hash.c @@ -856,8 +856,9 @@ css_error _insert_into_chain(css_selector_hash *ctx, hash_entry *head, #endif if (prev == NULL) { + hash_entry temp; entry->next = entry; - hash_entry temp = *entry; + temp = *entry; *entry = *head; *head = temp; } else { -- 1.8.3.4