
25 Aug
2012
25 Aug
'12
2:35 p.m.
On Saturday 25 August 2012 15:28:25 you wrote:
Hi,
[snip]
It is not clear where the problem is but I think for some reason Boost.Phoenix thinks that output_terminal is a nullary terminal, despite the fact that I specialized is_nullary to return false. Is there something wrong with my code or is it a problem with Boost.Phoenix?
After some digging around, I think I found the source of the problem. Boost.Phoenix specializes is_nullary for custom_terminal<T> to be always true and I see no way around it on my side. The compiler either prefers this specialization over mine or produces an error of abiguous specializations of is_nullary. Can this be fixed? Or is there another way to do what I need?