> From: Mark H Weaver <m...@netris.org> > Cc: l...@gnu.org, guile-devel@gnu.org > Date: Tue, 12 Aug 2014 14:08:48 -0400 > > > +# define getuid() (500) /* Local Administrator */ > > +# define getgid() (513) /* None */ > > +# define setuid(u) (0) > > +# define setgid(g) (0) > > As I've said before, I'm not okay with making 'setuid', 'seteuid', > 'setgid', or 'setegid' into no-ops. They should at least raise an error > when called on Windows, and maybe they should be undefined.
I explained at length why failing in these functions or having them undefined (i.e. signaling a fatal error in any code that uses them) would be a mistake. Please see http://lists.gnu.org/archive/html/guile-devel/2014-02/msg00072.html All the cases I know of where such operations were not made no-ops on Windows are terrible annoyances: they produce useless warning and error messages that no one can possibly do anything about. It would be a pity to have such annoyances in Guile. Maybe you could describe a practical situation where you consider having these undefined or failing would be TRT? I cannot think of any.