It looks like it's just a trade off of one set of compiler problems for another. Going from 7.1.1a to 7.2.
7.2 did shave off 4k, but in quick tests it had issues with some of the saved parameters.
But 7.1.1a has it's own issues. Below, in this function I had to move a text string into a buffer to send it, otherwise CW would optimize it out. I even tried turning off optimizations, to no avail.
Oh well.
static void fnDNSListner(unsigned char ucEvent, unsigned char *ptrIP){
CHAR cBuf[16];
switch (ucEvent) {
case DNS_EVENT_SUCCESS:
uStrcpy(cBuf, "DNS answer: ");
fnDebugMsg(cBuf);
//fnDebugMsg("DNS answer: "); //code warror optimizes this line away
fnIPStr(ptrIP, cBuf);
fnDebugMsg(cBuf);
fnDebugMsg("\r\n");
//uMemcpy(ip_sockets.ip, ptrIP, IPV4_LENGTH); // save the IP address which has just been resolved
break;
default: // DNS error message
break;
}
}
Aaron