On Tue, Mar 29, 2011 at 7:09 PM, Guenter Knauf <fua...@apache.org> wrote: > Am 30.03.2011 00:52, schrieb Guenter Knauf: >> >> are you really sure this is the right thing? /me doubt ... >> 1. its in an internal header - if we want to expoert that function then >> it should be moved to a public header >> 2. if you look into apr_xml.c you can find: >> APR_DECLARE(apr_xml_parser *) apr_xml_parser_create(apr_pool_t *pool) >> { >> return apr_xml_parser_create_ex(pool, &start_handler, &end_handler, >> &cdata_handler); >> } >> >> so why should something directly link against apr_xml_parser_create_ex() ? > > I dont find any other reference to apr_xml_parser_create_ex() beside the one > in apr_xml.c; so I guess the linkage error happens because > apr_xml_parser_create_ex() is wrongly marked for export in the C file, or?
right, apr_xml_expat/libxml had API-style linkage xml/apr_xml_expat.c:APR_DECLARE(apr_xml_parser *) apr_xml_parser_create_ex(apr_pool_t *pool, xml/apr_xml_libxml2.c:APR_DECLARE(apr_xml_parser *) apr_xml_parser_create_ex(apr_pool_t *pool, meanwhile, apr_xml_parser_create_ex() certainly *sounds* like an API niq, is that to be exported eventually? otherwise, the APR_DECLARE() can be ripped off and the two implementations be given a less API-sounding name