Skip to content

Commit b66c8ce

Browse files
committed
VS 2015 fix
1 parent 476d9cb commit b66c8ce

File tree

3 files changed

+24
-23
lines changed

3 files changed

+24
-23
lines changed

.appveyor.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -102,6 +102,8 @@ matrix:
102102
USING_BOOST: 1
103103
- image: Visual Studio 2015
104104
MINGW: 1
105+
- image: Visual Studio 2017
106+
MINGW: 1
105107
- image: Visual Studio 2017
106108
SEPARATE_COMPILATION: 1
107109
- image: Visual Studio 2017

include/asio/inline_or_executor.hpp

Lines changed: 17 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -266,15 +266,13 @@ class inline_or_executor
266266
* asio::execution::blocking.never); @endcode
267267
*/
268268
template <typename Property>
269-
inline_or_executor<Executor, execution::blocking_t::never_t,
270-
InlineExceptionHandling>
271-
require(const Property&,
272-
constraint_t<
273-
is_same<Property, execution::blocking_t::never_t>::value
274-
> = 0,
275-
constraint_t<
276-
can_require<const Executor&, Property>::value
277-
> = 0) const noexcept
269+
constraint_t<
270+
is_same<Property, execution::blocking_t::never_t>::value
271+
&& can_require<const Executor&, Property>::value,
272+
inline_or_executor<Executor, execution::blocking_t::never_t,
273+
InlineExceptionHandling>
274+
>
275+
require(const Property&) const noexcept
278276
{
279277
return inline_or_executor<Executor, execution::blocking_t::never_t,
280278
InlineExceptionHandling>(executor_);
@@ -329,18 +327,16 @@ class inline_or_executor
329327
* asio::execution::relationship.continuation); @endcode
330328
*/
331329
template <typename Property>
332-
inline_or_executor<decay_t<require_result_t<const Executor&, Property>>,
333-
Blocking, InlineExceptionHandling>
334-
require(const Property& p,
335-
constraint_t<
336-
can_require<const Executor&, Property>::value
337-
> = 0,
338-
constraint_t<
339-
!is_convertible<Property, execution::blocking_t>::value
340-
> = 0,
341-
constraint_t<
342-
!is_convertible<Property, execution::inline_exception_handling_t>::value
343-
> = 0) const
330+
constraint_t<
331+
can_require<const Executor&, Property>::value
332+
&& !is_convertible<Property,
333+
execution::blocking_t>::value
334+
&& !is_convertible<Property,
335+
execution::inline_exception_handling_t>::value,
336+
inline_or_executor<decay_t<require_result_t<const Executor&, Property>>,
337+
Blocking, InlineExceptionHandling>
338+
>
339+
require(const Property& p)
344340
noexcept(is_nothrow_require<const Executor&, Property>::value)
345341
{
346342
return inline_or_executor<

src/Makefile.msc

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -349,12 +349,15 @@ asio.lib: asio.cpp
349349
lib -name:asio.lib asio.obj
350350
!endif
351351

352-
!ifdef STANDALONE
353352
all: \
353+
tests\unit\inline_or_executor.exe
354+
355+
!ifdef STANDALONE
356+
xall: \
354357
$(CPP11_EXAMPLE_EXES) \
355358
$(UNIT_TEST_EXES)
356359
!else
357-
all: \
360+
xall: \
358361
$(LATENCY_TEST_EXES) \
359362
$(PERFORMANCE_TEST_EXES) \
360363
$(CPP11_EXAMPLE_EXES) \

0 commit comments

Comments
 (0)