Commit Graph

2842 Commits

Author SHA1 Message Date
Andrew Johnson
c5a27fa32e Rework epicsThreadOnce() using ideas from Michael Davidsaver.
An epicsThreadOnceId is now an epicsThreadId.
During initialization, it is set to the thread running the init routine
which can now detect a recursive initialization attempt and suspend.
EPICS_THREAD_ONCE_INIT is still zero, the implementations now define a
new private value for EPICS_THREAD_ONCE_DONE.  This is deliberately not
made public.
2010-04-26 15:38:11 -05:00
Michael Davidsaver
356ee58927 use osi epicsMath.h 2010-03-24 13:17:41 -04:00
Michael Davidsaver
cadbcb43a2 use C++ name make.h 2010-03-24 11:34:00 -04:00
Michael Davidsaver
75a15809fa epicsTimer: check that delay time is finite 2010-03-16 21:09:52 -04:00
Michael Davidsaver
244796bbaa remove STATIC 2010-03-16 21:09:51 -04:00
Andrew Johnson
3b0036b389 Improve code readablity, add more numeric tests. 2010-03-09 10:49:21 -06:00
Andrew Johnson
c29551f247 Rename the time provider name routines, don't rely on the #define. 2010-02-09 10:49:08 -06:00
Andrew Johnson
215bbed49c Include standard headers before defining epicsExportSharedSymbols 2010-01-11 17:56:17 -06:00
Andrew Johnson
023cf2c548 Added redirection support for puts() and putchar(). 2009-12-22 23:47:19 +00:00
Andrew Johnson
fd5773a3fc ESHUTDOWN is not in FreeBSD and hence not in RTEMS. 2009-12-22 17:43:25 +00:00
Andrew Johnson
b8a2e64601 Added a couple of COMMANDLINE_LIBRARY synonyms for READLINE 2009-09-29 18:58:04 +00:00
Andrew Johnson
534ca2c86e Make ellFree() a 1-argument macro, calls ellFree2() with free as freeFunc. 2009-08-28 18:34:38 +00:00
Andrew Johnson
f17ac39f29 Disable divide by zero warnings on MSVC when generating NAN and INF.
Use those values rather than calculating them independently.
2009-08-25 18:19:49 +00:00
Jeff Hill
d84e9cb3ec exp passed to assert must not change the state of the data structures 2009-08-24 17:08:41 +00:00
Jeff Hill
fa24d119dd use verify instead of assert (in tests) 2009-08-24 17:07:03 +00:00
Andrew Johnson
1c95101ae1 Fixed Till's report of non-thread-safe lazy-init. 2009-08-21 17:32:13 +00:00
Andrew Johnson
c28520bea6 Adjust test 66 so it doesn't fail if the gcc optimizer result gives -1 but
glibc returns +1.  Both are correct, gcc is following a newer standard.
2009-08-21 14:49:01 +00:00
Andrew Johnson
87eace1bd4 Fix for solaris compiler complaint about ambiguity of 'exception'. 2009-08-18 19:26:37 +00:00
Jeff Hill
0012042a5e accomodate archaic vxWorks gnu compiler 2009-08-14 17:31:34 +00:00
Jeff Hill
78fc566dc4 improved thread creation failure exception diagnostics 2009-08-14 16:54:45 +00:00
Jeff Hill
6fe047731f added shjow func to epicsThread class 2009-08-10 21:48:50 +00:00
Jeff Hill
56c4c92588 improved show diagnostic 2009-08-10 21:41:59 +00:00
Andrew Johnson
57e5406684 Added STATIC_ASSERT macro.
Removed assert() definition for pre-ANSI C compilers.
2009-08-04 19:07:07 +00:00
Andrew Johnson
4868904839 Added CONTAINER macro, from Micheal Davidsaver (BNL). 2009-08-04 16:31:06 +00:00
Andrew Johnson
90db5a4ab0 Deleted test code which was moved to libCom/test some time ago. 2009-08-03 17:13:04 +00:00
Jeff Hill
72e1dba496 o no need to allocate or initialize one more fd_set than is used
(not a bug but messy)
o added optimization where we only check as many registered fd's
on the list as select tells us are active in its status
o added code to clear all of the  fd_set if select returns an error
(in practice this would not cause a bug other than some extra activity
that would immediately self terminate when it clear the flag in the fd_set,
and also we dont see the error message printed when select returns an error)
2009-07-30 23:21:19 +00:00
Jeff Hill
d764e7d4df added "using namespace std" 2009-07-29 15:10:24 +00:00
W. Eric Norum
49ddec4294 Add cvtFastPerform to test harness. 2009-07-29 14:29:54 +00:00
W. Eric Norum
fd6d1ce69c As reported by Michael Davidsaver.
Apparently the GeSys dynamic linker doesn't maintain C semantics.
I'm afraid that this behaviour is likely to cause lots of other problems,
but for now I'll apply the patch since it's harmless.
2009-07-23 21:04:27 +00:00
Jeff Hill
844ed6345a test also numbers in -5 to 5 range 2009-07-23 17:32:33 +00:00
Jeff Hill
7315f02888 added cvtFastPerfotm test 2009-07-23 17:25:51 +00:00
Andrew Johnson
3d717f4476 (M. Davidsaver): errnumlist was never initialized.
Removed long-deprecated errSymFind routine.
2009-07-09 20:11:02 +00:00
Andrew Johnson
0fb320c263 (M. Davidsaver): Use ELLLIST init macros. 2009-07-09 18:37:26 +00:00
Andrew Johnson
9663cd58f1 Fixed ELL*_INIT macros. 2009-07-09 17:51:17 +00:00
Andrew Johnson
039648824c Remove redundant macro definitions already defined in dbDefs.h
(M. Davidsaver)
2009-07-09 17:06:45 +00:00
Andrew Johnson
4e0ab97038 (M. Davidsaver): static keyword is part of C89,
remove all uses and internal definitions of LOCAL macro
2009-07-09 16:37:24 +00:00
Andrew Johnson
d7d0531394 offsetof is required by C89 (M. Davidsaver) 2009-07-09 16:19:57 +00:00
Andrew Johnson
d6fcbe14ab Cleaned up dbDefs.h and errMdef.h
Added various #include lines needed in other sources.
2009-07-09 15:27:43 +00:00
Andrew Johnson
70bf066ba9 Added ELLNODE_INIT and ELLLIST_INIT macros. 2009-07-08 19:04:22 +00:00
Andrew Johnson
eb800fd351 Use new provider registration function name. 2009-07-06 20:17:29 +00:00
Andrew Johnson
2e38b09398 Tidy-up, deleted vxWorks-specific version (unnecessary),
added the task name to the printed assert message.
2009-07-02 19:49:11 +00:00
Jeff Hill
cc3245bf65 finished removal of epicsShareAPI (as I assume was intended) 2009-06-30 19:15:48 +00:00
Andrew Johnson
d84d198733 Initialize the errSym table as part of errlogInit rather than doing it
later in an error path, when we might have already run out of memory!
2009-06-19 18:24:22 +00:00
Andrew Johnson
f32394e795 pdevLibVirtualOS needs epicsShareDef and explicitly setting to NULL,
but we can't do the latter in the os/default version.
2009-06-15 16:10:07 +00:00
Andrew Johnson
5d9317339f Removed function versions of macros, spacing cleanup. 2009-06-11 22:23:37 +00:00
Andrew Johnson
a66a192ed5 Expand READONLY macro, deprecate. 2009-06-05 19:56:33 +00:00
Andrew Johnson
4fc14d2dfb Fix slash. 2009-06-05 19:10:46 +00:00
Andrew Johnson
9338d4ec59 Removed the guts of the SigAlarm code, which was only needed for HPUX
and on Linux breaks external libraries that use the Posix Timer API.
2009-06-04 21:31:39 +00:00
Andrew Johnson
68bdaa899e Fixes to allow building on Solaris. Its <cxxx> headers are evidently not
quite drop-in C++ replacements for the <xxx.h> C versions.
2009-06-02 22:31:46 +00:00
Jeff Hill
8d245ba595 added try/catch blocks so that we hopefully can bridge
periods where the new general time provides (unexpectedly
considering its advertised benfits) no time at all.
2009-05-11 22:50:06 +00:00