summaryrefslogtreecommitdiffstats
path: root/generic/tclIO.c
diff options
context:
space:
mode:
authorbrad.harder@gmail.com <bch>2015-01-20 23:40:23 (GMT)
committerbrad.harder@gmail.com <bch>2015-01-20 23:40:23 (GMT)
commit5938a2ed5b2eaf350c6a57e13dc34d631ca109e9 (patch)
tree5f53dc07954f5bdd7972a72da393236ede18c46c /generic/tclIO.c
parentf1c9b23dc06929bc024d546a5a721651350ceee0 (diff)
downloadtcl-5938a2ed5b2eaf350c6a57e13dc34d631ca109e9.zip
tcl-5938a2ed5b2eaf350c6a57e13dc34d631ca109e9.tar.gz
tcl-5938a2ed5b2eaf350c6a57e13dc34d631ca109e9.tar.bz2
assert() on missing definitions for Tcl_ChannelCreate() required struct Tcl_ChannelType{} fields.
Diffstat (limited to 'generic/tclIO.c')
-rw-r--r--generic/tclIO.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/generic/tclIO.c b/generic/tclIO.c
index a9091af..596ba3f 100644
--- a/generic/tclIO.c
+++ b/generic/tclIO.c
@@ -1548,6 +1548,15 @@ Tcl_CreateChannel(
*/
assert(sizeof(Tcl_ChannelTypeVersion) == sizeof(Tcl_DriverBlockModeProc *));
+ assert(NULL!=typePtr->closeProc);
+ assert(NULL!=typePtr->inputProc);
+ assert(NULL!=typePtr->outputProc);
+ assert(NULL!=typePtr->watchProc);
+ assert(NULL!=typePtr->truncateProc);
+ assert(NULL!=typePtr->getHandleProc);
+ if (NULL!=typePtr->wideSeekProc) {
+ assert(NULL!=typePtr->seekProc && "Must define seekProc if defining wideSeekProc");
+ }
/*
* JH: We could subsequently memset these to 0 to avoid the numerous