Hi! With recent moving of string lengths to size_t, it looks like PDO APIs weren't updated. I.e.:
typedef int (*pdo_stmt_get_col_data_func)(pdo_stmt_t *stmt, int colno, char **ptr, zend_ulong *len, int *caller_frees); This looks like len should be size_t, and in fact fetch_value() in pdo_stmt.c sends size_t parameter there, but since I'm not very familiar with PDO internals, I'd like to double check - is it an omission and will anything break if I change it to size_t? There are also other things, like: const char *driver_name; zend_ulong driver_name_len; typedef int (*pdo_dbh_prepare_func)(pdo_dbh_t *dbh, const char *sql, zend_long sql_len, pdo_stmt_t *stmt, zval *driver_options); typedef zend_long (*pdo_dbh_do_func)(pdo_dbh_t *dbh, const char *sql, zend_long sql_len); typedef int (*pdo_dbh_quote_func)(pdo_dbh_t *dbh, const char *unquoted, int unquotedlen, char **quoted, int *quotedlen, enum pdo_param_type paramtype); As you can see, sometimes length is an int, sometimes zend_long, sometimes zend_ulong. This looks like it needs some cleanup. -- Stas Malyshev smalys...@gmail.com -- PHP Internals - PHP Runtime Development Mailing List To unsubscribe, visit: http://www.php.net/unsub.php