Michael Davidsaver
c16f19c80e
Flip #if logic for unaligned access
...
Assume only x86 can correctly/efficiently handle unaligned access.
2023-05-24 21:49:38 -07:00
Michael Davidsaver
87018882d1
ARM/Linux can fault on unaligned access
...
Sometimes SIGBUS results from unaligned access.
2023-05-24 20:44:32 -07:00
2547514abb
fix for use-after-free warning
2023-02-28 09:04:58 -08:00
Michael Davidsaver
07b79693af
Deprecate/remove unused buffer alignment tools
...
ByteBuffer::align() does not work as expected
on some RTEMS targets where malloc() returns
buffers aligned only to 4 bytes.
SerializableControl::alignBuffer() and
DeserializableControl::alignData() are implemented,
but never called, in this module and pvAccessCPP.
ByteBuffer::align() is only needed to implement
these two methods.
Leave non-pure virtual stubs to assist in migration.
2020-11-14 11:07:15 -08:00
Michael Davidsaver
320cc3c60b
shared_vector_convert<>() fix convert of empty array
...
Empty arrays can be untyped, but this doesn't matter.
2020-09-29 15:52:49 -07:00
Michael Davidsaver
2e775ef2fb
drop THROW_BASE_EXCEPTION_CAUSE()
2020-06-17 14:08:14 -07:00
Michael Davidsaver
f17d2bbca1
add maybeQuote()
...
Something for the *NIX gurus
to light their pipes with.
2020-06-17 14:08:14 -07:00
Michael Davidsaver
19245ce805
sharedVector extend base_ptr() to VS2013
2020-06-03 10:14:38 -07:00
60091bfe56
removed spaces at end of line
2020-04-15 07:53:22 -07:00
f4de6dd9b1
replaced tabs with spaces
2020-04-15 07:53:22 -07:00
Michael Davidsaver
e9dde4d2f8
update doc
2019-12-13 09:32:42 -08:00
Michael Davidsaver
d01ba94ed7
avoid extraneous copy
2019-09-23 10:14:55 -07:00
Michael Davidsaver
0ad253c6f0
Remove Base 3.14 compatibility
2019-09-23 10:14:55 -07:00
Michael Davidsaver
416d910577
Timer: further attempt to avoid state corruption
2019-07-31 20:13:33 -07:00
Michael Davidsaver
37b7a0708f
Timer more alive checks
2019-07-31 19:01:20 -07:00
Michael Davidsaver
3ef60a61a2
always epicsThreadStackBig
...
On RTEMS at least, c++ code needs the largest
standard stack frame size.
2019-07-08 09:07:09 -07:00
Michael Davidsaver
cfcdd1a3f9
deprecate ByteBuffer::getArray()
...
in favor of identical ByteBuffer::getBuffer()
2019-05-18 18:21:06 -07:00
Michael Davidsaver
f780ebdf76
remove deprecated localStaticLock
2019-05-01 14:06:33 -07:00
Michael Davidsaver
d53cb0cbc9
doc
2019-04-17 11:47:56 -07:00
Michael Davidsaver
8f0111e482
fix ByteBuffer::putArray() and getArray()
...
Erroneous mixing of byte and element indexing
introduced by a51b308cc8
2019-04-08 09:46:23 -07:00
Michael Davidsaver
f0ef0965c4
AnyScalar doc
2019-03-11 14:05:10 -07:00
MJGaughran
deccc41b9a
Disabled NEED_OLL_FUNCS for Visual Studio 2013+ ( #64 )
...
* Disabled NEED_OLL_FUNCS for Visual Studio 2013+
Both _MSC_VER (VC++ compiler version) and EPICS base version should be
checked for strtoll, strtoull definitions.
* NEED_OLL_FUNCS now defined only for VS builds
2019-03-02 11:11:42 -08:00
Michael Davidsaver
d00f54228d
quiet warning, and possible dllimport/export
...
Seen as a warning on clang, but class/struct
can result in different mangled symbol names
w/ MSVC.
2018-11-07 09:06:58 -08:00
Michael Davidsaver
fa731bf6c3
helper to escape while printing strings
2018-10-29 13:12:01 -07:00
Michael Davidsaver
434b9f7a9f
Timer: simply wakeup condition
2018-10-19 13:35:35 -07:00
Michael Davidsaver
f54602dead
update doc
2018-10-18 16:43:56 -07:00
Michael Davidsaver
e400d9f5fd
Timer reschedule if earlier timer added
2018-10-18 14:44:51 -07:00
Michael Davidsaver
5a59b1da75
Status avoid extra copies
2018-09-21 10:28:37 -07:00
Michael Davidsaver
f66d277918
msvc 9 compat
2018-07-12 19:05:12 -07:00
Michael Davidsaver
4ef7db20f8
sharePtr.h: adjust apply/llvm compatibility
2018-07-12 15:38:49 -07:00
Michael Davidsaver
340fa8a7cb
Thread accept non-copyable std::function
2018-07-11 16:30:05 -07:00
Michael Davidsaver
a029455466
Thread reftrack
2018-07-11 16:30:04 -07:00
Michael Davidsaver
27f78c430b
move Thread out of line
2018-07-11 16:29:50 -07:00
Michael Davidsaver
a1c0e432ee
fix Timer
...
use after free
2018-06-19 16:32:39 -07:00
Michael Davidsaver
f1553cc90e
Move NOMINMAX to configure/CONFIG_SITE
...
The macro must be defined before MS system headers are
included.
This rev. remove #define NOMINMAX from public headers,
but no public headers use min()/max() and this was
never the correct way to use this macro as by convention
library headers are included after system headers,
which is too late to have an effect.
2018-05-28 11:24:49 -07:00
Michael Davidsaver
997e68c99a
remove usage of min()/max() from public headers
...
Avoids need for #define NOMINMAX w/ MSVC
2018-05-28 10:14:03 -07:00
Michael Davidsaver
1e55266396
pvUnitTest.h avoid unintended copies
...
template argument matching doesn't always preserve
rvalue references, so force use of const ref.
2018-05-21 11:21:01 -07:00
Michael Davidsaver
7eaa613d4d
try to fix dllimport error
2018-04-17 21:13:22 -07:00
Michael Davidsaver
19db72031c
shared_vector add missing void swap
...
swap() of void and const void misses vtype
2018-04-13 12:40:22 -07:00
Michael Davidsaver
671f9cca4b
anyscalar.h: move out of line
...
No reason to believe that inline was helping.
2018-04-08 15:53:21 -07:00
Michael Davidsaver
9ecdb80534
anyscalar.h: remove unnecesary vcast
...
what was I thinking...
2018-04-08 15:53:21 -07:00
Michael Davidsaver
e973422ee1
anyscalar.h: add ctor from type code and void*
...
also helper bufferUnsafe() to get storage pointer
or c_str().
2018-04-08 15:53:21 -07:00
Michael Davidsaver
8093c25b72
typeCast.h: allow cast from C string to numeric w/o copy
...
also re-enable compile test of string to int64 which
was disabled for some reason...
2018-04-08 15:53:21 -07:00
Michael Davidsaver
a7c9c620dd
Timer avoid deadlock in timerStopped()
...
No code actually uses this hook, but lets make
sure nothing bad would happen.
2018-04-08 15:53:21 -07:00
Michael Davidsaver
1e1d94ed73
rework Timer
...
I'm not sure how I broke it, but I know I don't have the patience
to fix it. So replacing intrusive list and custom sorting with
std::list and std::list::merge().
2018-04-04 21:03:11 -07:00
Michael Davidsaver
7b8ef390ce
add Timer::close()
...
An aid to orderly shutdown
2018-04-02 15:54:48 -07:00
Michael Davidsaver
87ade13234
Timer cleanup and hide run()
2018-04-02 15:54:48 -07:00
Michael Davidsaver
32abde7f19
redo Timer to avoid data race
...
run() was accessing this->head w/o locking
2018-04-02 10:54:49 -07:00
Michael Davidsaver
b4cd026fe5
byteBuffer cleanup
2018-03-23 10:05:31 -07:00
Michael Davidsaver
a51b308cc8
ByteBuffer avoid PPC alignment fault
2018-03-19 15:26:40 -07:00