[Info-vax] Whither VMS?

Bob Eager rde42 at spamcop.net
Tue Oct 6 19:48:37 EDT 2009


On Tue, 06 Oct 2009 18:39:42 -0400, JF Mezei wrote:

> From what I have been told, some of the C library functions have been
> implemented as macros now so that the code is embedded in the mainline
> and allowing compiler optimisations.
> 
> For instance, character conversions functions such as toupper, tolower,
> isalpha, isnum etc are now implemented as macros, not functions.

That used to be common in the Microsoft compilers (typical). However, 
those macros were generally broken in that their semantics were not quite 
the same as their functional equivalent (e.g. toupper just stripped off a 
bit). Some were renamed to (e.g.) _toupper, because the standard now 
mandates toupper as a proper function.

However...section 7.26 of the standard is the interesting one (and I 
didn't know this, but the standard happened to be right beside me). It 
says that ALL names starting with 'str', 'mem' (for example) are 
reserved, no matter what files are included! There are other examples 
such as whole function names such as 'cerf'.

This is obviously just to future-proof programs, and in practice I doubt 
that it matters. Compilers would not generally check this; as said 
before, it's a library thing.


-- 
Use the BIG mirror service in the UK:
 http://www.mirrorservice.org




More information about the Info-vax mailing list