I'll bet "far" and "near" are #defined to blank, and are a Windows pointer-size related issue. Seems best to avoid using them as identifiers in any case, ie push Rob's changes upstream?
Ed -----Original Message----- From: sisyph...@optusnet.com.au Sent: Tuesday, June 16, 2015 1:33 AM To: Bob Free ; Chris Marshall Cc: pdl-devel@lists.sourceforge.net ; kmx Subject: Re: [Pdl-devel] CHM/OpenGL-0.6704_01.tar.gz uploaded to CPAN -----Original Message----- From: Bob Free Sent: Tuesday, June 16, 2015 6:38 AM To: Chris Marshall Cc: Sisyphus ; kmx ; Christian Walde ; pdl-devel@lists.sourceforge.net Subject: Re: CHM/OpenGL-0.6704_01.tar.gz uploaded to CPAN > Thanks for the update - will investigate and hopefully fix today! - Bob Note that Chris's successful build of OpenGL on SPP 5.22.0.1 is against freeglut-2.8.1. (OpenGL doesn't build there against freeglut-3.0.0 either - so SPP shipped with 2.8.1.) Here are those strange parsing errors I got: ############################################ pogl_matrix.xs: In function 'set_data_frustrum': pogl_matrix.xs:119:5: error: parameter name omitted GLfloat left, GLfloat right, GLfloat top, GLfloat bottom, GLfloat near, GLfloat far) ^ pogl_matrix.xs:119:5: error: parameter name omitted pogl_matrix.xs:123:29: error: expected expression before ';' token GLfloat depth = far-near; ^ pogl_matrix.xs:125:23: error: invalid type argument of unary '*' (have 'double') data[0] = near*2.0/width; ^ pogl_matrix.xs:130:23: error: invalid type argument of unary '*' (have 'double') data[5] = near*2.0/height; ^ pogl_matrix.xs:135:29: error: expected expression before ')' token data[10] = -(far+near)/depth; ^ pogl_matrix.xs:139:29: error: invalid type argument of unary '*' (have 'double') data[14] = -(far*near*2.0)/depth; ^ pogl_matrix.c: In function 'XS_OpenGL__Matrix_set_frustrum': pogl_matrix.c:686:15: error: expected identifier or '(' before '=' token GLfloat near = (float)SvNV(ST(5)) ^ pogl_matrix.c:688:14: error: expected identifier or '(' before '=' token GLfloat far = (float)SvNV(ST(6)) ^ pogl_matrix.xs:420:78: error: expected expression before ',' token set_data_frustrum((GLfloat*)mat->data, left, right, top, bottom, near, far); ^ pogl_matrix.c: In function 'XS_OpenGL__Matrix_set_perspective': pogl_matrix.c:729:15: error: expected identifier or '(' before '=' token GLfloat near = (float)SvNV(ST(3)) ^ pogl_matrix.c:731:14: error: expected identifier or '(' before '=' token GLfloat far = (float)SvNV(ST(4)) ^ pogl_matrix.xs:442:26: error: invalid type argument of unary '*' (have 'double') double h_2 = near*tan(fov*PI/360); ^ pogl_matrix.xs:444:74: error: expected expression before ',' token set_data_frustrum((GLfloat*)mat->data, -w_2, w_2, -h_2, h_2, near, far) ; ^ pogl_matrix.c: In function 'XS_OpenGL__Matrix_set_ortho': pogl_matrix.c:781:15: error: expected identifier or '(' before '=' token GLfloat near = (float)SvNV(ST(5)) ^ pogl_matrix.c:783:14: error: expected identifier or '(' before '=' token GLfloat far = (float)SvNV(ST(6)) ^ pogl_matrix.xs:468:33: error: expected expression before ';' token GLfloat depth = far-near; ^ pogl_matrix.xs:485:33: error: expected expression before ')' token data[14] = -(far+near)/depth; ^ dmake: Error code 129, while making 'pogl_matrix.o' ############################################ (I might've misplaced one or two '^' in unravelling the wrap-arounds. And my mail format might lead to further misplacement of some of them) The patch I used for pogl_matrix.xs is attached. Thanks Bob, Chris !! Cheers, Rob ------------------------------------------------------------------------------ _______________________________________________ pdl-devel mailing list pdl-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/pdl-devel ------------------------------------------------------------------------------ _______________________________________________ pdl-devel mailing list pdl-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/pdl-devel