rem: _dc = _cachedb;
add: _dc = *_cachedb;
context: int dbt_cache_print(int _f){	dbt_cache_p _dc=NULL;	tbl_cache_p _tbc = NULL;		if(!_cachesem)		return -1;		lock_get(_cachesem);		_dc = _cachedb;	while(_dc)	{		lock_get(&_dc->sem);		if(_dc->dbp)		{			if(_f)				fprintf(stdout, "\n--- Database [%.*s]\n", _dc->dbp->name.len,								_dc->dbp->name.s);			_tbc = _dc->dbp->tables;			while(_tbc)			{				lock_get(&_tbc->sem);				if(_tbc->dtp)				{					if(_f)					{						fprintf(stdout, "\n----- Table [%.*s]\n",								_tbc->dtp->name.len, _tbc->dtp->name.s);						fprintf(stdout, "-------  LA=<%d> FL=<%x> AC=<%d>"								" AV=<%d>\n", _tbc->dtp->mark, _tbc->dtp->flag,								_tbc->dtp->auto_col, _tbc->dtp->auto_val);						dbt_print_table(_tbc->dtp, NULL);					}					else					{						if(_tbc->dtp->flag & DBT_TBFL_MODI)						{							dbt_print_table(_tbc->dtp, &(_dc->dbp->name));							dbt_table_update_flags(_tbc->dtp,DBT_TBFL_MODI, 									DBT_FL_UNSET, 0);						}					}				}				lock_release(&_tbc->sem);				_tbc = _tbc->next;			}		}		lock_release(&_dc->sem);				_dc = _dc->next;	}		lock_release(_cachesem);		return 0;}