[jira] [Assigned] (MESOS-7142) Revisit MSVC decltype bug

2018-10-02 Thread Andrew Schwartzmeyer (JIRA)


 [ 
https://issues.apache.org/jira/browse/MESOS-7142?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Schwartzmeyer reassigned MESOS-7142:
---

Assignee: (was: Andrew Schwartzmeyer)

> Revisit MSVC decltype bug
> -
>
> Key: MESOS-7142
> URL: https://issues.apache.org/jira/browse/MESOS-7142
> Project: Mesos
>  Issue Type: Improvement
> Environment: Windows with Visual Studio 2017 RC
>Reporter: Andrew Schwartzmeyer
>Priority: Minor
>  Labels: libprocess, windows
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> Review https://reviews.apache.org/r/56781/ works around an existent and 
> acknowledged bug in MSVC. From MSVC team:
> {quote}
> I have preprocessed file from Andy yesterday, thank you. I can verify that 
> this is a bug in the latest compiler where it’s failing to get the right 
> context for the decltype expression for the return type of function. However, 
> MSVC does deduce the right type from the return expression in the body. We 
> have a bug in the compiler logged now and will be tracked for next release. 
> We’ll be adding Mesos project to our daily RealWorld Testing set from now on 
> as continuous validation for MSVC compiler. Thank you for bringing this up to 
> our attention.
> template 
>   auto then(F&& f) const-> decltype(this->then(std::forward(f), Prefer()))
> Should really expand to this expression, but it’s failing.
> template 
>   auto then(F&& f) const -> decltype(static_cast Future*>(this)->then(std::forward(f), Prefer()))
> The workaround from Michael to skip explicit return type for auto function 
> should be actually better source change for MSVC compiler. For completeness 
> sake, you can also just remove ‘this->’ from the decltype expression to make 
> it work for MSVC compiler 
> -> decltype(then(std::forward(f), Prefer()))
> Another thing worth pointing out is, adding ‘this->’ in the body of the 
> function shows that MSVC does correctly deduce the return type.
>   template 
>   auto then(F&& f) const
>   //  -> decltype(then(std::forward(f), Prefer()))
> // -> decltype(static_cast Future*>(this)->then(std::forward(f), Prefer()))
>   {
> return this->then(std::forward(f), Prefer());
>   }
> {quote}
> This issue tracks revisiting the work-around when the first patch to VS2017 
> is released, as the compiler bug itself should be fixed then.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (MESOS-7142) Revisit MSVC decltype bug

2018-04-19 Thread Andrew Schwartzmeyer (JIRA)

 [ 
https://issues.apache.org/jira/browse/MESOS-7142?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Schwartzmeyer reassigned MESOS-7142:
---

Assignee: Andrew Schwartzmeyer

> Revisit MSVC decltype bug
> -
>
> Key: MESOS-7142
> URL: https://issues.apache.org/jira/browse/MESOS-7142
> Project: Mesos
>  Issue Type: Improvement
> Environment: Windows with Visual Studio 2017 RC
>Reporter: Andrew Schwartzmeyer
>Assignee: Andrew Schwartzmeyer
>Priority: Minor
>  Labels: libprocess, windows
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> Review https://reviews.apache.org/r/56781/ works around an existent and 
> acknowledged bug in MSVC. From MSVC team:
> {quote}
> I have preprocessed file from Andy yesterday, thank you. I can verify that 
> this is a bug in the latest compiler where it’s failing to get the right 
> context for the decltype expression for the return type of function. However, 
> MSVC does deduce the right type from the return expression in the body. We 
> have a bug in the compiler logged now and will be tracked for next release. 
> We’ll be adding Mesos project to our daily RealWorld Testing set from now on 
> as continuous validation for MSVC compiler. Thank you for bringing this up to 
> our attention.
> template 
>   auto then(F&& f) const-> decltype(this->then(std::forward(f), Prefer()))
> Should really expand to this expression, but it’s failing.
> template 
>   auto then(F&& f) const -> decltype(static_cast Future*>(this)->then(std::forward(f), Prefer()))
> The workaround from Michael to skip explicit return type for auto function 
> should be actually better source change for MSVC compiler. For completeness 
> sake, you can also just remove ‘this->’ from the decltype expression to make 
> it work for MSVC compiler 
> -> decltype(then(std::forward(f), Prefer()))
> Another thing worth pointing out is, adding ‘this->’ in the body of the 
> function shows that MSVC does correctly deduce the return type.
>   template 
>   auto then(F&& f) const
>   //  -> decltype(then(std::forward(f), Prefer()))
> // -> decltype(static_cast Future*>(this)->then(std::forward(f), Prefer()))
>   {
> return this->then(std::forward(f), Prefer());
>   }
> {quote}
> This issue tracks revisiting the work-around when the first patch to VS2017 
> is released, as the compiler bug itself should be fixed then.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (MESOS-7142) Revisit MSVC decltype bug

2018-04-19 Thread Michael Park (JIRA)

 [ 
https://issues.apache.org/jira/browse/MESOS-7142?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Michael Park reassigned MESOS-7142:
---

Assignee: (was: Michael Park)

> Revisit MSVC decltype bug
> -
>
> Key: MESOS-7142
> URL: https://issues.apache.org/jira/browse/MESOS-7142
> Project: Mesos
>  Issue Type: Improvement
> Environment: Windows with Visual Studio 2017 RC
>Reporter: Andrew Schwartzmeyer
>Priority: Minor
>  Labels: libprocess, windows
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> Review https://reviews.apache.org/r/56781/ works around an existent and 
> acknowledged bug in MSVC. From MSVC team:
> {quote}
> I have preprocessed file from Andy yesterday, thank you. I can verify that 
> this is a bug in the latest compiler where it’s failing to get the right 
> context for the decltype expression for the return type of function. However, 
> MSVC does deduce the right type from the return expression in the body. We 
> have a bug in the compiler logged now and will be tracked for next release. 
> We’ll be adding Mesos project to our daily RealWorld Testing set from now on 
> as continuous validation for MSVC compiler. Thank you for bringing this up to 
> our attention.
> template 
>   auto then(F&& f) const-> decltype(this->then(std::forward(f), Prefer()))
> Should really expand to this expression, but it’s failing.
> template 
>   auto then(F&& f) const -> decltype(static_cast Future*>(this)->then(std::forward(f), Prefer()))
> The workaround from Michael to skip explicit return type for auto function 
> should be actually better source change for MSVC compiler. For completeness 
> sake, you can also just remove ‘this->’ from the decltype expression to make 
> it work for MSVC compiler 
> -> decltype(then(std::forward(f), Prefer()))
> Another thing worth pointing out is, adding ‘this->’ in the body of the 
> function shows that MSVC does correctly deduce the return type.
>   template 
>   auto then(F&& f) const
>   //  -> decltype(then(std::forward(f), Prefer()))
> // -> decltype(static_cast Future*>(this)->then(std::forward(f), Prefer()))
>   {
> return this->then(std::forward(f), Prefer());
>   }
> {quote}
> This issue tracks revisiting the work-around when the first patch to VS2017 
> is released, as the compiler bug itself should be fixed then.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Assigned] (MESOS-7142) Revisit MSVC decltype bug

2018-02-09 Thread Andrew Schwartzmeyer (JIRA)

 [ 
https://issues.apache.org/jira/browse/MESOS-7142?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Andrew Schwartzmeyer reassigned MESOS-7142:
---

Assignee: Michael Park  (was: Andrew Schwartzmeyer)

> Revisit MSVC decltype bug
> -
>
> Key: MESOS-7142
> URL: https://issues.apache.org/jira/browse/MESOS-7142
> Project: Mesos
>  Issue Type: Improvement
> Environment: Windows with Visual Studio 2017 RC
>Reporter: Andrew Schwartzmeyer
>Assignee: Michael Park
>Priority: Minor
>  Labels: libprocess, windows
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> Review https://reviews.apache.org/r/56781/ works around an existent and 
> acknowledged bug in MSVC. From MSVC team:
> {quote}
> I have preprocessed file from Andy yesterday, thank you. I can verify that 
> this is a bug in the latest compiler where it’s failing to get the right 
> context for the decltype expression for the return type of function. However, 
> MSVC does deduce the right type from the return expression in the body. We 
> have a bug in the compiler logged now and will be tracked for next release. 
> We’ll be adding Mesos project to our daily RealWorld Testing set from now on 
> as continuous validation for MSVC compiler. Thank you for bringing this up to 
> our attention.
> template 
>   auto then(F&& f) const-> decltype(this->then(std::forward(f), Prefer()))
> Should really expand to this expression, but it’s failing.
> template 
>   auto then(F&& f) const -> decltype(static_cast Future*>(this)->then(std::forward(f), Prefer()))
> The workaround from Michael to skip explicit return type for auto function 
> should be actually better source change for MSVC compiler. For completeness 
> sake, you can also just remove ‘this->’ from the decltype expression to make 
> it work for MSVC compiler 
> -> decltype(then(std::forward(f), Prefer()))
> Another thing worth pointing out is, adding ‘this->’ in the body of the 
> function shows that MSVC does correctly deduce the return type.
>   template 
>   auto then(F&& f) const
>   //  -> decltype(then(std::forward(f), Prefer()))
> // -> decltype(static_cast Future*>(this)->then(std::forward(f), Prefer()))
>   {
> return this->then(std::forward(f), Prefer());
>   }
> {quote}
> This issue tracks revisiting the work-around when the first patch to VS2017 
> is released, as the compiler bug itself should be fixed then.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)