From: SourceForge.net <no...@so...> - 2008-12-17 16:44:58
|
Bugs item #2440625, was opened at 2008-12-17 15:13 Message generated for change (Comment added) made by dkf You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=2440625&group_id=10894 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: 45. Parsing and Eval Group: development: 8.6a4 Status: Open Resolution: None Priority: 5 Private: No Submitted By: Larry W. Virden (lvirden) Assigned to: miguel sofer (msofer) Summary: compile warning for tclBasic.c Initial Comment: platform: sun sparc solaris 8, sun c compiler, tcl 8.6 cvs head During the gmake all step, the following warning is produced: /vol/tclsrcsol/tcl86/tcl/unix/../generic/tclAsync.c /opt/SUNWspro/bin/cc -c -g -KPIC -I"." -I/vol/tclsrcsol/tcl86/tcl/unix/../unix -I/vol/tclsrcsol/tcl86/tcl/unix/../generic -I/vol/tclsrcsol/tcl86/tcl/unix/../ libtommath -DPACKAGE_NAME=\"tcl\" -DPACKAGE_TARNAME=\"tcl\" -DPACKAGE_VERSION=\" 8.6\" -DPACKAGE_STRING=\"tcl\ 8.6\" -DPACKAGE_BUGREPORT=\"\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_UNISTD_H=1 -DHAVE_LIMITS_H=1 -DHAVE_SYS_PARAM_H=1 -DTCL_CFGVAL_ENCODING=\"iso8859-1\" -D_REENTRANT=1 -D_POSIX_PTHREAD_SEMANTICS=1 -DTCL_SHLIB_EXT=\".so\" -DTCL_CFG_DEBUG=1 -DTCL_TOMMATH=1 -DMP_PREC=4 -DTCL_WIDE_INT_TYPE=long\ long -DHAVE_STRUCT_DIRENT64=1 -DHAVE_STRUCT_STAT64=1 -DHAVE_OPEN64=1 -DHAVE_LSEEK64=1 -DHAVE_TYPE_OFF64_T=1 -DWORDS_BIGENDIAN=1 -DHAVE_GETCWD=1 -DHAVE_OPENDIR=1 -DHAVE_STRTOL=1 -DHAVE_WAITPID=1 - DHAVE_GETADDRINFO=1 -DUSE_TERMIOS=1 -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 - DHAVE_DECL_TZNAME=1 -DHAVE_TZNAME=1 -DHAVE_GMTIME_R=1 -DHAVE_LOCALTIME_R=1 -DHAVE_MKTIME=1 -DHAVE_TIMEZONE_VAR=1 -DHAVE_STRUCT_STAT_ST_BLKSIZE=1 -DHAVE_ST_BLKSIZE=1 -DHAVE_INTPTR_T=1 -DHAVE_UINTPTR_T=1 -DNO_UNION_WAIT=1 -DHAVE_SIGNED_CHAR=1 -DHAVE_LANGINFO=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_SYS_FILIO_H=1 -DTCL_UNLOAD_DLLS=1 /vol/tclsrcsol/tcl86/tcl/unix/../generic/tclBasic.c "/vol/tclsrcsol/tcl86/tcl/unix/../generic/tclBasic.c", line 4297: warning: assignment type mismatch: pointer to function(pointer to void, pointer to struct Tcl_Interp {pointer to char unused3, pointer to function(..) returning void unused4, int unused5} , int, pointer to const pointer to struct Tcl_Obj {int refCount, pointer to char bytes, int length, pointer to const struct Tcl_ObjType {..} typePtr, union {.. } internalRep}) returning int "=" pointer to void While I understand it is "just" a warning, I thought it might be worthwhile hearing about in case there is something that can be done about it. ---------------------------------------------------------------------- >Comment By: Donal K. Fellows (dkf) Date: 2008-12-17 16:44 Message: I just googled (and relied on memory and kbk and jenglish) ---------------------------------------------------------------------- Comment By: Alexandre Ferrieux (ferrieux) Date: 2008-12-17 16:23 Message: Donal, can you give a pointer (pun intended) to a relevant standard excerpt showing this unbelievable degree of freedom ? Or details about the "various reasons" ? ---------------------------------------------------------------------- Comment By: Donal K. Fellows (dkf) Date: 2008-12-17 16:10 Message: Problem is, C doesn't guarantee that sizeof(void*)==sizeof(Tcl_ObjCmdProc*) for various reasons. (If they are the same, it's a safe thing to do. If they aren't, it's disastrous.) So, a cast and an assert. (Assigning to originator of this code.) ---------------------------------------------------------------------- Comment By: Don Porter (dgp) Date: 2008-12-17 15:42 Message: best to add a typecast? ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=2440625&group_id=10894 |