Commit Graph

359 Commits

Author SHA1 Message Date
Ion Gaztañaga
256eb4e6cd Use <boost/container/detail/minimal_char_traits_header.hpp> to avoid including <string> when possible. 2015-01-04 02:33:38 +01:00
Ion Gaztañaga
37d00bc798 Compile-time dependency reduction. Update to Boost.Container changes. 2015-01-02 19:40:37 +01:00
Ion Gaztañaga
2f61f8543c Merge branch 'feature/haiku-support' of https://github.com/jessicah/interprocess into jessicah-feature/haiku-support 2014-11-22 09:18:49 +01:00
Ion Gaztañaga
366b20dfc9 Use boost::long_long_type to avoid warnings in -pedantic 2014-11-22 09:16:45 +01:00
Adrien Destugues
8fb11b021b haiku: we don't have XSI shared memory, so don't try to use it.
Signed-off-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>
2014-11-16 13:43:52 +13:00
Ion Gaztañaga
060efcfffb Put the forward declaration of _ReadWriteBarrier before the intrinsic pragma to avoid errors in some MSVC versions 2014-10-18 17:58:22 +02:00
Ion Gaztañaga
ddb2bf50c0 Add Mingw support, as _ReadWriteBarrier is a MSVC intrinsic. 2014-10-18 17:42:29 +02:00
Ion Gaztañaga
ac06eb010a Removed GCC warnings about unused parameters 2014-10-13 23:33:30 +02:00
Ion Gaztañaga
7d9f58ca99 Added missing #pragma once 2014-10-13 23:26:57 +02:00
Ion Gaztañaga
2c4f35f282 Fixes Trac #10506 2014-10-04 11:42:22 +02:00
Marcel Raad
cc1aebc7ac Compile fix for BOOST_USE_WINDOWS_H
If BOOST_USE_WINDOWS_H is defined, the call to get_system_info has to be qualified with an explicit namespace.
2014-09-26 11:15:42 +02:00
Ion Gaztañaga
e1b438f64f Added explanations about template parameters in offset_ptr 2014-09-22 00:18:19 +02:00
Ion Gaztañaga
69ad21ad02 Made deallocation function more readable and removed dead code 2014-09-14 23:50:27 +02:00
Ion Gaztañaga
d0d3d7211f Added extra size check for BOOST_ASSERT when previous block is free 2014-09-10 23:20:52 +02:00
Ion Gaztañaga
19e6101b9e Specified template parameter in get_rounded_size to avoid compilation errors in some compilers. 2014-08-31 21:40:36 +02:00
Ion Gaztañaga
4986d95b8e Merge branch 'patch-1' of https://github.com/MarcelRaad/interprocess into MarcelRaad-patch-1 2014-08-31 21:38:42 +02:00
Ion Gaztañaga
0420041e8d Removed unique_ptr and forwarded boost::interprocess::unique_ptr to boost::movelib::unique_ptr 2014-08-27 23:52:12 +02:00
Marcel Raad
32be68c9a2 Compile fix for BOOST_USE_WINDOWS_H
With BOOST_USE_WINDOWS_H defined, get_process_times must be explicitly prefixed with the winapi namespace because ADL cannot deduce it.
2014-08-25 17:04:34 +02:00
Ion Gaztañaga
5a976aa521 Use ___sync_synchronize instead of ___atomic as the later is only available in latest builds. 2014-08-14 01:01:01 +02:00
Ion Gaztañaga
e8c4994b45 Merge branch 'master' of https://github.com/DonOregano/interprocess into DonOregano-master 2014-08-14 00:33:59 +02:00
Lars Hagström
fb52749ed2 fix memory barriers in atomic operations 2014-08-12 10:29:39 +02:00
Ion Gaztañaga
4e56b3c032 Reorganized Doxygen marks to obtain a better header reference 2014-08-04 00:18:14 +02:00
Ion Gaztañaga
58019f0d9a Trac #10229: Compiling errors in interprocess\detail\os_file_functions.hpp 2014-07-31 23:41:05 +02:00
Ion Gaztañaga
3c09ceec0c Renamved variable "hz" as it conflicts with AIX's system variable. 2014-07-30 16:38:50 +02:00
Ion Gaztañaga
ad1b7f301c Massive but simple changes:
- Removed all tabs
- Changed all Doxygen @cond/@endcond tags with preprocessor sections, as Doxygen still has some problems when parsing this code. This also makes unmatched Doxygen sections a compilation error, which is easier to detect.
2014-07-30 11:46:32 +02:00
Adam Wulkiewicz
048c570c70 Fix compilation error in MinGW, invalid return type (pointer to function) 2014-07-28 13:47:26 +02:00
Ion Gaztañaga
dfed5bbab5 Fixes #10230: No Sleep in interprocess::winapi 2014-07-28 00:09:47 +02:00
Ion Gaztañaga
06eef6f4e8 intermodule_singleton fixes for many platforms:
- Use Boost.Container to allow debug-release mixed code (in some platforms, std:: containers' ABI changes from Debug to Release)

- By default non-Phoenix and Lazy singletons.

- Use atexit instead of the global object destructor to obtain LIFO semantics.

- Avoid testing Phoenix singletons, as in many plataforms calling atexit from atexit is not supported.
2014-07-14 23:34:17 +02:00
Ion Gaztañaga
a3e766e635 Fix compilation error in Mingw, GetProcAddress does not return void*, but a pointer to function 2014-07-14 23:32:16 +02:00
Ion Gaztañaga
de72bbf2d8 Fixed vector_test and cleaned up intermodule singleton code. 2014-07-10 21:38:52 +02:00
Ion Gaztañaga
fe40c36e6c Removed unused variable and strict aliasing warnings in GCC. 2014-06-16 21:07:10 +02:00
Ion Gaztañaga
1eb0000ac9 Fixed unused variable and redeclaration warnings. 2014-06-06 14:06:53 +02:00
Ion Gaztañaga
360a39d078 Removed unneeded dependency from Boost.Math 2014-06-06 14:06:11 +02:00
Adam Wulkiewicz
0be5672e70 Fix MinGW warnings caused by the unknown MSVC pragmas 2014-06-06 00:51:51 +02:00
Ion Gaztañaga
aa09229e8a Fixes #10011 segment_manager::find( unique_instance_t* ) fails to compile 2014-06-02 14:40:19 +02:00
Ion Gaztañaga
81a5fcf56d Removed trailing whitespaces. 2014-05-28 15:48:09 +02:00
Ion Gaztañaga
de405e89a3 * If BOOST_USE_WINDOWS_H is defined, <windows.h> and other windows SDK files are included,
otherwise the library declares needed functions and structures to reduce the impact of including
those heavy headers.

*  Added `get_size` to windows_shared_memory.
2014-05-28 15:30:04 +02:00
Ion Gaztañaga
02a7e7ecf2 More interprocess_exception fixes & #ifdef rephrasings 2014-05-25 20:50:39 +02:00
Adam Wulkiewicz
d0a647b129 Rephrase the #ifdef in errors.hpp 2014-05-25 17:21:50 +02:00
Adam Wulkiewicz
f1e1af0a47 Fix interprocess_exception throw in file_wrapper::priv_open_or_create.
On Windows the exception object is created using the result of GetLastError().
When compiled using MinGW the throw instruction itself is using some WinApi call which overwrites the last error.
Therefore the error code must be retrieved before the exception is thrown.
2014-05-25 17:13:35 +02:00
Richard Dale
ec7b1726a6 Provide support for the Cray C++ compiler. The Cray compiler defines __GNUC__
and generally supports gnu extensions to C and C++.  It does not, however, support
inline assembly.  The changes here are to avoid inline assembly when _CRAYC is asserted
in the preprocessor.
2014-05-20 13:14:53 -05:00
Ion Gaztañaga
fb1b0e547c Fixes #9767 (bootstamp generation causes error in case of corrupt Windows Event Log) and #9911 (get_tmp_base_dir(...) failure) 2014-04-28 01:21:03 +02:00
Ion Gaztañaga
9191d2cca6 Fixed #9946: ret_ptr uninitialized in init_atomic_func, fini_atomic_func 2014-04-26 23:47:09 +02:00
Ion Gaztañaga
65b5d34a04 Fixes #9835, typos and MSVC version offset_ptr branchless optimization fix. 2014-04-08 06:50:52 +02:00
Ion Gaztañaga
cdda0f1854 Workaround for MSVC2013 x64 2014-02-15 00:15:39 +01:00
Ion Gaztañaga
0526a090be Fixed previous git reset error. 2014-02-14 23:20:54 +01:00
Ion Gaztañaga
a0ea486cf6 Merge branch 'develop' 2014-02-14 20:03:03 +01:00
Ion Gaztañaga
f5f5c8c903 - Removed old fully_mapped_file.hpp header provoked by git transition
- Typo and extra space fix.
2013-12-23 10:21:59 +01:00
Ion Gaztañaga
07bb8d0940 Fixed error when adding os_thread_func_ptr_deleter, UNIX OSs also use it.
[SVN r86777]
2013-11-20 17:10:43 +00:00
Ion Gaztañaga
ecfec55cc9 Fixes #9408 ("Android does not support XSI_SHARED_MEMORY_OBJECTS")
[SVN r86765]
2013-11-19 11:53:51 +00:00