Messages in this thread | | | From | David Laight <> | Subject | RE: tools: usbip: detach: avoid calling strlen() at each iteration | Date | Wed, 16 Sep 2015 13:44:08 +0000 |
| |
From: Aaro Koskinen > Sent: 15 September 2015 21:56 ... > > - for (unsigned int i = 0; i < strlen(port); i++) > > + unsigned int port_len = strlen(port); > > + > > + for (unsigned int i = 0; i < port_len; i++) > > port is read only in this function, so maybe just use "const" and the > compiler should know to do the same without adding a new variable?
While I've seen the compiler make the assumption, I'm not sure it should assume that data that is 'const' in one function cannot be modified by a called function. (Unless the compiler has some way of knowing that the called function cannot obtain a non-const pointer to the referenced data.) (This is also independent of whether the const pointer is passed to the function.)
David
| |