Looks like Microsoft has changed its implementation of two phase lookup, and the forward references in the print_node function are now flagged as errors. If you have this problem, you can change the Conformance flag from /permissive- to /permissive (in the UI, under properties -> c/c++ -> language -> Conformance mode = No).
Setting the /permissive flag will probably cause other template issues.
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Looks like Microsoft has changed its implementation of two phase lookup, and the forward references in the print_node function are now flagged as errors. If you have this problem, you can change the Conformance flag from /permissive- to /permissive (in the UI, under properties -> c/c++ -> language -> Conformance mode = No).
Setting the /permissive flag will probably cause other template issues.