<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><html>On Mar 21, 2008, at 1:07 PM, Tim A. wrote:</html><br class="Apple-interchange-newline"><blockquote type="cite"> <div bgcolor="#ffffff" text="#000000"> Tim A. wrote: <blockquote cite="mid:47E2BA64.30201@goldenpath.org" type="cite"> Michael Hernandez wrote: <blockquote cite="mid:A42E3194-82E5-401D-BAED-C947D397CED6@techally.com" type="cite"> <pre wrap="">On Mar 18, 2008, at 3:36 PM, Marc Spitzer wrote:
</pre> <blockquote type="cite"> <pre wrap="">On Tue, Mar 18, 2008 at 2:46 PM, Michael Hernandez
<a moz-do-not-send="true" class="moz-txt-link-rfc2396E" href="mailto:mhernandez@techally.com"><mhernandez@techally.com></a> wrote:
</pre> <blockquote type="cite"> <pre wrap="">I am trying to build the php5-spl port and I keep getting errors like
this:
/usr/ports/devel/php5-spl/work/php-5.2.5/ext/spl/php_spl.c:61: error:
invalid type argument of `->'
I looked at php_spl.c - I don't see what's wrong with it. The line
is:
spl_globals->autoload_extensions = NULL;
Is that not valid code? Is my gcc just old? I'm running out of ideas
here. Any help would be appreciated.
</pre> </blockquote> <pre wrap="">is spl_globals a pointer? Stupid question but it is complaining that
it can not do a pointer dereference and access structure field.
marc
</pre> </blockquote> <pre wrap=""><!---->To be quite honest, I'm not sure - I guess the PHP hackers might be
too used to hacking in PHP and so their C is getting sloppy? Which
isn't good since PHP is written in C, not PHP. :)
</pre> </blockquote> <br> I just gave it a go. Installed from port just fine on 6.2.<br> Stupid question, but have you tried a portsnap?<br> <br> </blockquote> <br> I've been brushing up on my C lately. (btw, O'Reilly's C Pocket Reference is really good.)<br> So, Mark's pointer question got me curious and I thought I'd look it up.<br> It seems easy enough to determine.<br> Assuming we're in <tt>/usr/ports/devel/php5-spl</tt><br> After you've at least attempted to install the port once, you should have a directory called work.<br> <tt># find work -type f -exec grep -Hn spl_globals {} \;<br> <br> </tt>Which indicates as I might have suspected, the answer is in <tt>php_spl.h</tt><br> <br> I think the following lines indicate that spl_globals is a pointer variable of type <tt>zend_spl_globals</tt> which would appear to be a pointer to a structure but I can't find where <tt>zend_spl_globals</tt> is implemented. It seems to not be in these source files.<br> <br> <tt>#ifdef ZTS<br> </tt><tt># define SPL_G(v) TSRMG(spl_globals_id, zend_spl_globals *, v)<br> extern int spl_globals_id;<br> #else<br> # define SPL_G(v) (spl_globals.v)<br> extern zend_spl_globals spl_globals;<br> #endif<br> <br> <br> I don't understand preprocessing though. So, I'm not sure exactly what the # define lines mean or how they work. (Coming up to that part).<br> Only thing I ever used those for were including standard headers.<br> <br> <br> <br> </tt> </div> <br></blockquote><br></div>I actually couldn't find the lines causing the errors at first due to vim line folding that was enabled by default somehow. <div><br></div><div>Also, yes I did portsnap before attemping my 3rd time.</div><div><br></div><div>Sorry for the late reply I just got 20+ messages from nycbug in one shot, apparently my favorite exchange server here at the office is up to it's old tricks again....</div><div><br></div><div>--Mike H</div></body></html>