RE: 1.5.14-1 cygwin1.dll could not be found
Original Message From: Igor Pechtchanski Sent: 15 April 2005 19:42 On Fri, 15 Apr 2005, Dave Korn wrote: 5) Do I really need to worry about putting return statements after calling LogSingleton::GetInstance().exit (1); ? There was a reference in there to some kind of 'issue' with ::exit, but I haven't yet done an archive search to try and understand what's going on - does anyone remember? IIRC, gcc needs to know that the exit() function never returns. It does know for ::exit() (because there's an appropriate attribute on it), but it doesn't for LogSingleton::exit(), and so will complain that the functions are missing a return statement. So you need to put those in to quell the warnings. Igor Ok, that means I can throw away the early-exit indication code. I'd have used 'abort' or 'exit' calls rather than return, myself; it makes it clear to both compiler and user that a noreturn function has been called. That simplifies the patch nicely. Meantime I just found a rather evil bug that needs patching. More later. cheers, DaveK -- Can't think of a witty .sigline today
RE: 1.5.14-1 cygwin1.dll could not be found
Original Message From: Dave Korn Sent: 07 April 2005 20:07 [Thread properly TITTAL'd, to coin a phrase] Well, I have a crude patch going, and it's that time of night that I'm leaving the office and going home now[*], so here's what I've done so far, just in case anyone else wants to have a go and see if it works for them. Here's rev.1 of that patch. I've avoided all the code duplication from the cut-n-paste-coding of the previous patch by factoring out the repeated bits into subroutines (and indeed by removing some slightly pointless constructs like that int e = 0; e += thing that was going on in the trycatch clauses. I've also removed the message boxes that I put in for debugging. The following points however remain: 3) There's no changelog entry! 4) I'm not sure how correct it is! For instance, do I need to worry about whether the cygwin package is going to be an uninstall-and-reinstall or a replace-in-place? To which I may as well add: 5) Do I really need to worry about putting return statements after calling LogSingleton::GetInstance().exit (1); ? There was a reference in there to some kind of 'issue' with ::exit, but I haven't yet done an archive search to try and understand what's going on - does anyone remember? I'm not so worried about 4) now. There's nothing innate to stop a package from being processed first by the uninstall, then by the replace-in-place loop, and if the uninstall affected the flags in the packagemeta in such a way that they passed the test (which I have now moved into upgrade_if_needed), then it would indeed be first uninstalled and then replaced in place. However that's the way its always worked; I assume it is implicitly protected against this by the behaviour of the various pkg.installed and pkg.desired flags. Anyway it seems to do the job reasonable well, so if nobody has offered me any of the requested-for comments by Monday a.m., I'll call it finalised and resubmit it with a changelog entry. cheers, DaveK -- Can't think of a witty .sigline today setup-save-cygdll-til-last-patch.diff Description: Binary data
RE: 1.5.14-1 cygwin1.dll could not be found
On Fri, 15 Apr 2005, Dave Korn wrote: 5) Do I really need to worry about putting return statements after calling LogSingleton::GetInstance().exit (1); ? There was a reference in there to some kind of 'issue' with ::exit, but I haven't yet done an archive search to try and understand what's going on - does anyone remember? IIRC, gcc needs to know that the exit() function never returns. It does know for ::exit() (because there's an appropriate attribute on it), but it doesn't for LogSingleton::exit(), and so will complain that the functions are missing a return statement. So you need to put those in to quell the warnings. Igor -- http://cs.nyu.edu/~pechtcha/ |\ _,,,---,,_[EMAIL PROTECTED] ZZZzz /,`.-'`'-. ;-;;,_[EMAIL PROTECTED] |,4- ) )-,_. ,\ ( `'-' Igor Pechtchanski, Ph.D. '---''(_/--' `-'\_) fL a.k.a JaguaR-R-R-r-r-r-.-.-. Meow! The Sun will pass between the Earth and the Moon tonight for a total Lunar eclipse... -- WCBS Radio Newsbrief, Oct 27 2004, 12:01 pm EDT