[gnu.g++.lib.bug] Plex.hP / Plex.ccP inconsistency

T.Day@ucl-cs.UUCP (11/09/89)

From: Tim Day <T.Day@uk.ac.ucl.cs>

In libg++-1.36.0 in Plex.hP / Plex.ccP

void <T>Plex::fill(<T&> x)
{...

and

void <T>Plex::fill(<T&> x, int lo, int hi)
{...

should have ``const'' inserted before <T&> to match the
description in the class header.

In fact this seems to be a problem in ALL the Plex prototype classes.

+-----------------------------------------------------------------------------+
Tim Day                           | Meet every second in life as challenge;
Department of Photogrammetry      | Respond fully to whatever happens
UCL, Gower St., London  WC1E 6BT  |  without anxiety, or complaint, or clinging
+-----------------------------------------------------------------------------+

dl@G.OSWEGO.EDU (Doug Lea) (11/11/89)

> void <T>Plex::fill(<T&> x, int lo, int hi)
> {...
> 
> should have ``const'' inserted before <T&> to match the
> description in the class header.
> 
> In fact this seems to be a problem in ALL the Plex prototype classes.

I removed `const' argument specifications from container classes
member functions where I thought these would give people problems -- I
didn't catch a few cases where I did this inconsistently between
headers and definitions. Sorry.

I removed const for two reasons:

In g++-1.36 prereleases, g++ was partially, but incompletely supporting
const member functions. (g++-1.36.1 now seems to do this correctly.)

Many people use containers for classes that have not been revised to
obey C++-2.0 const rules (This includes several libg++ classes!). I
decided to remove const so that everyone could have a chance to do this
without all of their code breaking.

const  member functions and arguments WILL be introduced/re-introduced
in these containers soon.

-Doug