[pure-lang-svn] SF.net SVN: pure-lang:[474] pure/trunk
Status: Beta
Brought to you by:
agraef
From: <ag...@us...> - 2008-08-12 13:59:49
|
Revision: 474 http://pure-lang.svn.sourceforge.net/pure-lang/?rev=474&view=rev Author: agraef Date: 2008-08-12 13:59:55 +0000 (Tue, 12 Aug 2008) Log Message: ----------- Add signal constants. Modified Paths: -------------- pure/trunk/ChangeLog pure/trunk/runtime.cc Modified: pure/trunk/ChangeLog =================================================================== --- pure/trunk/ChangeLog 2008-08-12 13:44:56 UTC (rev 473) +++ pure/trunk/ChangeLog 2008-08-12 13:59:55 UTC (rev 474) @@ -1,5 +1,7 @@ 2008-08-12 Albert Graef <Dr....@t-...> + * runtime.cc (pure_sys_vars): Add signal constants. + * pure.cc (main): Set up handlers for standard POSIX termination signals, mapping these to orderly Pure exceptions of the form 'signal SIG'. Modified: pure/trunk/runtime.cc =================================================================== --- pure/trunk/runtime.cc 2008-08-12 13:44:56 UTC (rev 473) +++ pure/trunk/runtime.cc 2008-08-12 13:59:55 UTC (rev 474) @@ -2938,4 +2938,62 @@ cdf(interp, "REG_ESPACE", pure_int(REG_ESPACE)); // regexec error codes cdf(interp, "REG_NOMATCH", pure_int(REG_NOMATCH)); + // signals +#ifdef SIGHUP + cdf(interp, "SIGHUP", pure_int(SIGHUP)); +#endif +#ifdef SIGINT + cdf(interp, "SIGINT", pure_int(SIGINT)); +#endif +#ifdef SIGQUIT + cdf(interp, "SIGQUIT", pure_int(SIGQUIT)); +#endif +#ifdef SIGILL + cdf(interp, "SIGILL", pure_int(SIGILL)); +#endif +#ifdef SIGABRT + cdf(interp, "SIGABRT", pure_int(SIGABRT)); +#endif +#ifdef SIGFPE + cdf(interp, "SIGFPE", pure_int(SIGFPE)); +#endif +#ifdef SIGKILL + cdf(interp, "SIGKILL", pure_int(SIGKILL)); +#endif +#ifdef SIGSEGV + cdf(interp, "SIGSEGV", pure_int(SIGSEGV)); +#endif +#ifdef SIGPIPE + cdf(interp, "SIGPIPE", pure_int(SIGPIPE)); +#endif +#ifdef SIGALRM + cdf(interp, "SIGALRM", pure_int(SIGALRM)); +#endif +#ifdef SIGTERM + cdf(interp, "SIGTERM", pure_int(SIGTERM)); +#endif +#ifdef SIGUSR1 + cdf(interp, "SIGUSR1", pure_int(SIGUSR1)); +#endif +#ifdef SIGUSR2 + cdf(interp, "SIGUSR2", pure_int(SIGUSR2)); +#endif +#ifdef SIGCHLD + cdf(interp, "SIGCHLD", pure_int(SIGCHLD)); +#endif +#ifdef SIGCONT + cdf(interp, "SIGCONT", pure_int(SIGCONT)); +#endif +#ifdef SIGSTOP + cdf(interp, "SIGSTOP", pure_int(SIGSTOP)); +#endif +#ifdef SIGTSTP + cdf(interp, "SIGTSTP", pure_int(SIGTSTP)); +#endif +#ifdef SIGTTIN + cdf(interp, "SIGTTIN", pure_int(SIGTTIN)); +#endif +#ifdef SIGTTOU + cdf(interp, "SIGTTOU", pure_int(SIGTTOU)); +#endif } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |