Newsgroups: comp.lang.c
Path: utzoo!utgpu!watserv1!watmath!datangua
From: datangua@watmath.waterloo.edu (David Tanguay)
Subject: Re: Is this a valid ANSI program?
Message-ID: <1991Jun26.232717.87@watmath.waterloo.edu>
Organization: University of Waterloo
References: <609@mtndew.Tustin.CA.US> <20461@alice.att.com>
Date: Wed, 26 Jun 1991 23:27:17 GMT
Lines: 15

In article <20461@alice.att.com> ark@alice.UUCP () writes:
>The compiler is correct: you cannot convert char ** to const char ** .
>To see why, consider the following program fragment:
[...]
> Thus allowing the commented line
>would open a hole in the type system by allowing you to modify
>a "const char" object without an explicit cast.

const doesn't mean that the value won't change, it only means that you
can't change it through that handle. For example, const volatile int i is
a valid and meaningful declaration (e.g., a read-only clock).
The behaviour you want from const is similar to the noalias behaviour. 
-- 
David Tanguay                  datanguay@watmath.waterloo.edu
Thinkage, Ltd.                 dat@Thinkage.On.CA
