Hi there, I've successfully developed a stripped down C++ php class creator, with private storage, a la Marcus Boerger util.c, and following Jay Smith, George Schlossnagle et al.
For neater code, I've stripped out function declarations, function entry tables, class entry etc. into a second .h/.cpp file pair, until all that's left are the static style functions, eg: static void some_object_free_storage(void *object TSRMLS_DC); and static zend_object_value some_object_new_ex(zend_class_entry *class_type, some_object **obj TSRMLS_DC); The nuance of cross-referencing these calls between two .cpp files (listed in config.m4, and so compiled into distinct .o files), eludes me. It's a c/cpp grammar issue, I guess, but one I've never had to deal with till now. Originally I had static foo1() calling static foo2() both in file1.cpp. Now I have static foo1() in file1.cpp calling (static?) foo2() in file2.cpp The correct syntax eludes me I'm afraid, and various static/non-static/extern combinations result either in 'used but not defined' errors, or compile fine but symbol not found, or sigsegv faults, presumably as the 'promised' function is unavailable. (latter output below) Perhaps someone would be kind enough to clarify the syntax appropriate for this call between modules/.o files. Cheers, Andrew. -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php