Neil MacIntosh
90c5b2b80b
Merge pull request #115 from socantre/add-column-limit
...
Add column limit to .clang-format
2015-10-02 09:09:50 -07:00
Seth Cantrell
dd923eee5f
Add column limit to .clang-format
2015-10-01 20:53:37 -04:00
Neil MacIntosh
87f7f30a90
Merge pull request #68 from socantre/master
...
Add .clang-format file
2015-10-01 13:37:36 -07:00
Neil MacIntosh
b51098a83d
Merge pull request #113 from neilmacintosh/master
...
Improved macros used for non-compliant compilers. Fixes #82 .
2015-09-30 22:05:27 -07:00
Neil MacIntosh
d531680a31
Improved macros used for non-compliant compilers.
2015-09-30 21:54:08 -07:00
Neil MacIntosh
398abc8fa6
Merge pull request #111 from neilmacintosh/master
...
Adding noexcept to finally, final_act, narrow_cast. Fixes #92 .
2015-09-30 15:15:01 -07:00
Neil MacIntosh
831c6926df
Adding noexcept to finally, final_act, narrow_cast. Fixes #92 .
2015-09-30 15:10:24 -07:00
Neil MacIntosh
c5c8a25f34
Merge pull request #110 from neilmacintosh/master
...
Renamed Final_act to final_act as per issue #91 .
2015-09-30 12:45:00 -07:00
Neil MacIntosh
d06f7ff779
Renamed Final_act to final_act as per issue #91 .
2015-09-30 12:39:18 -07:00
Neil MacIntosh
fcff3fded1
Merge pull request #107 from RicoAntonioFelix/master
...
Commit to address issue #103...
2015-09-30 12:15:52 -07:00
RicoAntonioFelix
e8ff01e543
Commit to address issue #103...
2015-09-30 12:50:42 -04:00
Neil MacIntosh
38a659c428
Merge pull request #105 from neilmacintosh/master
...
Correct misleading text in static_assert. Fixes issue #67 .
2015-09-29 17:06:45 -07:00
Neil MacIntosh
761554f68d
Correct misleading text in static_assert. Fixes issue #67 .
2015-09-29 16:54:00 -07:00
Neil MacIntosh
25c90750f2
Merge pull request #104 from neilmacintosh/master
...
Renamed namespace to 'gsl'. Renamed macro to configure testing.
2015-09-29 16:46:34 -07:00
Neil MacIntosh
ef626fd33a
Renamed namespace to 'gsl'. Renamed macro to configure testing.
2015-09-29 16:41:37 -07:00
Neil MacIntosh
d023ad51a7
Merge pull request #90 from john-lynch/master
...
Fixing move constructor/semantics of Final_act
2015-09-28 23:15:24 -07:00
john-lynch
ae24c0fe06
Added test that Final_act object can be moved properly. While this is not a common case, it may happen if the user calls finally and the compiler fails to perform RVO.
2015-09-29 00:03:15 -05:00
john-lynch
1d11cd1ed1
Fixing typo in move constructor implementation that resulted in compile error during tests.
2015-09-29 00:00:21 -05:00
john-lynch
422e7164d5
Fixing move constructor of Final_act to take non-const r-value reference and move properly from other Final_act object so that correctness is not dependent on copy elison.
2015-09-28 23:40:25 -05:00
Neil MacIntosh
065f4880c3
Merge pull request #88 from trebconnell/fixmaybenull
...
Fix issue #49
2015-09-28 18:54:31 -07:00
Treb Connell
444bf9640a
Fix issue #49
2015-09-28 18:49:53 -07:00
Neil MacIntosh
318cee0489
Merge pull request #87 from trebconnell/fixmaybenull
...
Fix issue #50
2015-09-28 18:40:57 -07:00
Neil MacIntosh
6a1179974d
Merge pull request #86 from kevgs/master
...
it's better to pass a small (e.g. 16 bytes) object by value then by c…
2015-09-28 18:39:26 -07:00
Treb Connell
83333419de
Add test that reproduces issue
2015-09-28 18:34:04 -07:00
Treb Connell
b29566628e
Revert "Fix issue #49 "
...
This reverts commit a46d6fcf0d
.
2015-09-28 18:26:35 -07:00
Treb Connell
a46d6fcf0d
Fix issue #49
2015-09-28 15:17:37 -07:00
Treb Connell
27ff004e84
Merge branch 'master' into fixmaybenull
...
Conflicts:
include/gsl.h
tests/maybenull_tests.cpp
2015-09-28 14:56:08 -07:00
Kosov Eugene
e46160c18e
it's better to pass a small (e.g. 16 bytes) object by value then by const reference
2015-09-28 23:20:28 +03:00
Neil MacIntosh
08064f8521
Merge pull request #85 from kevgs/master
...
fix clang -Wunused-parameter warnings
2015-09-28 11:28:55 -07:00
Kosov Eugene
3402b92ef6
fix clang -Wunused-parameter warnings
2015-09-28 21:20:02 +03:00
Neil MacIntosh
3571792058
Merge pull request #78 from kernhanda/kernhanda/heterogenous-assignment-not_null
...
Add various copy assignment operators to not_null and maybe_null_*.
2015-09-28 07:05:43 -07:00
Gabriel Dos Reis
6554e83c79
Macro expand constexpr
to nothing under MSVC
...
Replace `_CONSTEXPR` with plain `constexpr`.
2015-09-28 05:10:44 -07:00
Gabriel Dos Reis
4e596761eb
Update list of known platforms where GSL was successfully tested
2015-09-28 04:43:59 -07:00
Kern Handa
7d8e609faf
Merge remote-tracking branch 'upstream/master' into kernhanda/heterogenous-assignment-not_null
2015-09-28 07:37:06 +00:00
Kern Handa
783eaabf9d
Add various copy assignment operators to not_null and maybe_null_*.
...
Also removed unused constant member variable that seemed to be there
to prevent maybe_null_* being used with anything other than a pointer,
which is being taken care of with a static_assert now.
2015-09-28 07:35:18 +00:00
Neil MacIntosh
62226021a8
Merge pull request #74 from neilmacintosh/master
...
Fixed leak in owner<> test. Ha!
2015-09-27 18:18:14 -07:00
Neil MacIntosh
bb169976da
Fixed leak in owner<> test. Ha ha ha!
2015-09-27 18:06:51 -07:00
Neil MacIntosh
1a0df71f2f
Merge pull request #73 from neilmacintosh/master
...
Correct fix for int/size_t mismatch.
2015-09-27 16:58:07 -07:00
Neil MacIntosh
99746e2d57
Correct fix for int/size_t mismatch.
2015-09-27 16:53:58 -07:00
Neil MacIntosh
fb91393bb2
Fixing size_t/int mismatch in loops.
2015-09-27 16:25:43 -07:00
Kern Handa
f1be21aa36
Merged Microsoft/GSL:master into branch and resolved conflicts.
2015-09-27 23:25:20 +00:00
Neil MacIntosh
bad8545eee
Merge pull request #70 from kernhanda/kernhanda/not_maybe_null
...
not_null and maybe_null variants should only work on nullptr-assignable types.
2015-09-27 12:43:44 -07:00
Kern Handa
2b6d90436f
not_null and maybe_null variants should only work on nullptr-assignable types.
...
This is in accordance with the GSL.View guidance on not_null and maybe_null
types in the CppCoreGuidelines document.
2015-09-27 19:35:23 +00:00
Gabriel Dos Reis
599a354b1c
Merge pull request #59 from kernhanda/kernhanda/size_t
...
Rank and dimensions should be size_t.
2015-09-27 12:21:22 -07:00
Gabriel Dos Reis
66131c985d
Merge pull request #69 from bashrc-real/patch-1
...
Guide::finally can make use of move semantics
2015-09-27 12:17:27 -07:00
saurabh singh
437791e504
GSL::finally can make use of move semantics
...
for eg consider this case
[code]
string value = "someVeryLongErrorMessageIAm";
finally([value] { PrintErrorMessage(value); }
[/code]
With the current changes before the call to PrintErrorMessage there will be 3 calls to copy constructor for string(1 when it's captured in closure, 2nd when finally is called and 3rd when it's passed to Final_act . With my patch there will be 1 call to the copy constructor and 2 to the move constructor for the scenario in example, so 2 potential deep copies will be saved for some objects.
Validated that code builds from root, and all tests pass after my change. Also validated that indeed copy constructor calls are saved for objects that support move semantics.
2015-09-27 16:11:12 +05:30
Seth Cantrell
96e5757181
Add .clang-format file
...
To have any hope of achieving consistent formatting there needs to be
a standard and a mechanism for enforcing it. This is a first step in
that direction.
This format specification is intended to mimic the existing style
insofar as the current source has any consistent style. For example
the determination as to whether ref qualifiers should bind to the
type or variable name was made by trying both and seeing which
produced fewer changes. One exception is the use of tabs vs. spaces,
which was decided based on a comment by neilmacintosh [here][1].
To use clang-format with Visual Studio [download][2] and install the
clang-format plugin. In VS ctrl-r, ctrl-f formats the current line or
text selection.
[1]: https://github.com/Microsoft/GSL/issues/55
[2]: http:llvm.org/builds/
2015-09-26 18:00:54 -04:00
Kern Handa
c4f9b87d96
We should be using standard algorithms where possible.
...
Use of algorithms in the STL should be promoted where possible.
Also fixed up some whitespace issues.
2015-09-25 17:11:17 -07:00
Neil MacIntosh
b40d3466c6
Merge pull request #52 from trebconnell/addheaderguards
...
Fix issue #39 : Add header guards
2015-09-25 15:17:05 -07:00
Treb Connell
1a791992a0
Add equality operators to maybe_nul_ret
2015-09-25 12:16:39 -07:00