Path: utzoo!attcan!uunet!lll-winken!ncis.llnl.gov!helios.ee.lbl.gov!pasteur!agate!bionet!csd4.milw.wisc.edu!mailrus!bbn!mit-eddie!mit-vax!waldemar From: waldemar@mit-vax.LCS.MIT.EDU (Waldemar Horwat) Newsgroups: comp.lang.c++ Subject: Re: Type Compatibility Message-ID: <5490@mit-vax.LCS.MIT.EDU> Date: 21 Jan 89 16:13:26 GMT References: <5485@mit-vax.LCS.MIT.EDU> Organization: MIT Laboratory for Computer Science, Cambridge Lines: 20 > f1(pb); //1 > g1(pb); //2 > i1(b); //4 > f2(ppb); //5 > g2(ppb); //6 > h2(pb); //7 > i2(pb); //8 I tested the following two compilers so far and got different results: AT&T CFront 1.2.1 2/16/87 accepts all seven statements and produces the expected code. GNU g++ 1.25.0 accepts all statements except 5. I find it unusual that it can coerce **B to **A but not **B to **void. Given the diversity of compiler behavior in this area, I am curious as to what the "right" behavior, if any, is. Waldemar Horwat