Daniel James
bb2a91bf47
Improved(?) hash function.
...
Given the existing interface, it's quite tricky to use most popular hash
functions without a change, so I'm using a modified version of FNV1a.
The current function always starts with a seed of 0 (and will in user
functions), so I'm adding the offset each time instead. I'm not sure if
that will work as well.
2014-01-28 23:33:25 +00:00
Stephen Kelly
09f197abf6
Functional: Remove obsolete MSVC version checks.
...
[SVN r86051]
2013-12-10 23:41:55 +00:00
Daniel James
582671543b
Use BOOST_HAS_PRAGMA_ONCE.
...
Remembering to first include config, so that it'll actually be defined.
[SVN r86726]
2013-12-10 23:41:13 +00:00
Stephen Kelly
6157ad5267
Remove obsolete MSVC check from pragma guard
...
git grep -h -B1 "^#\s*pragma once" | grep -v pragma | sort | uniq
is now clean.
[SVN r85952]
2013-12-10 23:40:59 +00:00
Daniel James
7dbc8b593f
Revert changes to develop branch.
...
Simplest way to merge to master.
2013-12-10 23:18:52 +00:00
Daniel James
b066a9c509
Use BOOST_HAS_PRAGMA_ONCE.
...
Remembering to first include config, so that it'll actually be defined.
[SVN r86726]
svn-trunk
2013-11-16 20:13:24 +00:00
Daniel James
74603822f4
Only use Visual C++ pragma for appropriate versions.
...
[SVN r86671]
2013-11-12 22:09:42 +00:00
Daniel James
998f714f8f
Link to archived copy of Thomas Wang's integer hash function.
...
His site's no longer on the web, so use web.archive.org instead.
[SVN r86607]
2013-11-10 23:25:54 +00:00
Stephen Kelly
614feab582
Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
...
Process #ifndef...#else...#endif blocks.
[SVN r86245]
2013-10-11 23:17:48 +00:00
Stephen Kelly
999c2d5963
Remove BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
...
Process #ifdef...#endif blocks.
[SVN r86243]
2013-10-11 23:13:10 +00:00
Daniel James
10c83e95d9
Change log.
...
[SVN r86173]
2013-10-06 08:03:12 +00:00
Daniel James
734eb87d2a
Simplify SFINAE for largest float overload. Refs #8822 .
...
I accidentally missed it out. Also fix the return values.
[SVN r86172]
2013-10-06 08:02:35 +00:00
Stephen Kelly
af17fa46fb
Functional: Remove obsolete GCC version checks.
...
[SVN r86112]
2013-10-01 08:46:45 +00:00
Stephen Kelly
e26c102522
Functional: Remove obsolete MSVC version checks.
...
[SVN r86051]
2013-09-30 11:22:29 +00:00
Stephen Kelly
378007cf94
Remove obsolete MSVC check from pragma guard
...
git grep -h -B1 "^#\s*pragma once" | grep -v pragma | sort | uniq
is now clean.
[SVN r85952]
2013-09-26 13:02:51 +00:00
Daniel James
dea8d12a04
Fix Visual C++ warning in hash. Refs #8568 .
...
I changed this a little from the patch on #8568 . I moved the pragmas to the
start and end of the file because I don't like to little the body of the code
with them (this does mean I've disabled a potentially useful warning, but the
code is pretty stable nowadays).
I also removed the version checks, as the warning should be present in later
versions.
[SVN r85248]
2013-08-08 22:01:18 +00:00
Daniel James
1870aa9534
Simpler test for appropriate floats for binary hashing. Refs #8822 .
...
No idea if this will actually fix it.
[SVN r85246]
2013-08-08 20:30:04 +00:00
Daniel James
0d6cee7e64
Change log entries for 1.54.0
...
[SVN r84496]
2013-05-25 15:45:51 +00:00
Daniel James
7d148af8d2
Hash: Fix typo, refs #7957 .
...
[SVN r82674]
2013-01-31 21:57:26 +00:00
Daniel James
bb8ebafca1
Hash: Changelog for undefined behaviour fix.
...
[SVN r82255]
2012-12-29 11:09:35 +00:00
Thomas Heller
7e162c4f03
Fixing UB by using memcpy instead of old style cast
...
[SVN r82218]
2012-12-27 10:49:19 +00:00
Daniel James
061e0d9d6d
Hash: Fix changelog for 1.53.0.
...
[SVN r82140]
2012-12-21 09:50:01 +00:00
Daniel James
e5f3356742
Hash: Stop using -strict-ansi for Intel.
...
It doesn't seem to be compatible with C++11.
[SVN r82060]
2012-12-17 23:38:35 +00:00
Daniel James
9721f9c764
Hash: Safer macro names in tests.
...
[SVN r82059]
2012-12-17 23:37:56 +00:00
Daniel James
8a8ab9ec70
Hash: Fix int128 with BOOST_HASH_NO_EXTENSIONS.
...
I don't think int128 should count as an extension.
BOOST_HASH_NO_EXTENSIONS is actually a bit of a pain, and I don't think it's
that useful. Maybe I should deprecate it.
[SVN r81870]
2012-12-12 09:44:32 +00:00
Daniel James
13a86a7a26
Hash: Fix int128 support.
...
[SVN r81854]
2012-12-11 15:48:19 +00:00
Daniel James
0e0906b0a4
Hash: Support boost::int128_type.
...
[SVN r81816]
2012-12-10 10:40:44 +00:00
Daniel James
67ad8c2151
Hash: Detab.
...
[SVN r81787]
2012-12-08 09:19:24 +00:00
Daniel James
be4292842d
Hash: Stop using warnings as errors for Visual C++.
...
I'd like to get full test results for Visual C++ with STLport.
[SVN r81712]
2012-12-04 22:23:20 +00:00
Daniel James
473b1da8de
Hash: Avoid some intel warnings in tests.
...
It doesn't have the GCC warning pragma, and doesn't like compiling the integer
tests with floats (used to compile them, but never use them).
[SVN r81679]
2012-12-02 21:12:38 +00:00
Daniel James
8afae2e762
Hash: Remove container_fwd_0x.hpp
...
[SVN r81678]
2012-12-02 21:12:24 +00:00
Daniel James
03380087a9
Hash: Don't use workarounds with recent compilers. #7221 , #7470
...
[SVN r81677]
2012-12-02 21:11:45 +00:00
Marshall Clow
9dcc33ab1b
Removed missed usage of deprecated macros in Boost.Functional
...
[SVN r81578]
2012-11-26 21:45:20 +00:00
Daniel James
7f7ecfc717
Hash: Extra test to check different platform's floating point functions.
...
[SVN r81210]
2012-11-05 18:33:54 +00:00
Daniel James
dfd48ef498
Hash: Revert r81122. Refs #7470 .
...
I'll get back to this later, it probably requires compiler specific changes.
[SVN r81124]
2012-10-31 19:05:25 +00:00
Marshall Clow
a2756e75e8
Narrower 'using'; Refs #7470
...
[SVN r81122]
2012-10-31 17:14:43 +00:00
Daniel James
acf1f3bc48
Hash: Update change log
...
[SVN r80777]
2012-09-30 11:56:13 +00:00
Daniel James
853a713cf2
Remove deprecated header boost/functional/detail/container_fwd.hpp
...
[SVN r80288]
2012-08-28 17:43:05 +00:00
Daniel James
7b2f73c225
Hash: Avoid type punning warning.
...
[SVN r80217]
2012-08-25 20:54:10 +00:00
Daniel James
eec47991f9
Hash: A single unified algorithm for hashing floats.
...
Attempts to automatically use a binary hash for floats where it's known to
work, and then use the generic hash algorithm as a fallback.
[SVN r80177]
2012-08-24 22:52:42 +00:00
Daniel James
f1de575546
Hash: Clean up some unit tests.
...
- Remove some unnecessary headers.
- Try to fix warning in enum tests.
- Compile tests + hash namespace in enum tests.
[SVN r80154]
2012-08-23 12:18:18 +00:00
Daniel James
05f16beaf0
Hash: Quick attempt at supporting enums.
...
Thanks to Filip Konvička.
[SVN r80139]
2012-08-22 11:40:27 +00:00
Daniel James
9119b2646b
Hash: Remove C++11 forward declarations.
...
It seems that on Visual C++ Dinkumware declares shared_ptr in std, but for
Intel C++ it imports it from std::tr1. I was thinking of doing a macro check
for this, but since we're close to release, just change it to always include
the headers and never forward declare the C++11 classes, which is much safer.
I might restore the forward declarations in the future, although I'm tempted
not to. I'm not sure the improvement in compile time is worth the hassle.
[SVN r80038]
2012-08-14 20:06:07 +00:00
Daniel James
0757aea7cb
Hash: Fix links to examples.
...
[SVN r79749]
2012-07-25 23:42:41 +00:00
Daniel James
92fe67f714
Compile error for deprecated header boost/functional/detail/container_fwd.hpp.
...
[SVN r79652]
2012-07-22 07:15:34 +00:00
Daniel James
5ebe3ad87d
Hash: Fix smart pointer macro check.
...
[SVN r79527]
2012-07-15 07:43:40 +00:00
Daniel James
411ac66581
Hash: std::shared_ptr, std::unique_ptr support.
...
[SVN r79516]
2012-07-14 22:32:29 +00:00
Marshall Clow
af3a31090c
Switch from deprecated macros to new shiny ones; no functionality change
...
[SVN r79392]
2012-07-09 20:12:04 +00:00
Daniel James
806abd0ddf
Hash: Only use typeid when available.
...
[SVN r78755]
2012-05-29 19:41:19 +00:00
Daniel James
8ef04ed807
Hash: Extra changelog note.
...
[SVN r78696]
2012-05-27 20:55:14 +00:00