Subject: fixbug
By: MND
Fixed: bug969.as
------------------------------ bug969.as ---------------------------------
--* From postmaster%watson.vnet.ibm.com@yktvmv.watson.ibm.com  Tue May 16 11:03:27 1995
--* Received: from yktvmv-ob.watson.ibm.com by watson.ibm.com (AIX 3.2/UCB 5.64/930311)
--*           id AA21961; Tue, 16 May 1995 11:03:27 -0400
--* Received: from watson.vnet.ibm.com by yktvmv.watson.ibm.com (IBM VM SMTP V2R3)
--*    with BSMTP id 3371; Tue, 16 May 95 11:03:27 EDT
--* Received: from YKTVMV by watson.vnet.ibm.com with "VAGENT.V1.0"
--*           id <A.BRONSTEI.NOTE.YKTVMV.8143.May.16.11:03:25.-0400>
--*           for asbugs@watson; Tue, 16 May 95 11:03:26 -0400
--* Received: from inf.ethz.ch by watson.ibm.com (IBM VM SMTP V2R3) with TCP;
--*    Tue, 16 May 95 11:03:24 EDT
--* Received: from mendel.inf.ethz.ch (bronstei@mendel.inf.ethz.ch [129.132.12.20]) by inf.ethz.ch (8.6.10/8.6.10) with ESMTP id RAA26389 for <asbugs@watson.ibm.com>; Tue, 16 May 1995 17:03:20 +0200
--* From: Manuel Bronstein <bronstei@inf.ethz.ch>
--* Received: (bronstei@localhost) by mendel.inf.ethz.ch (8.6.10/8.6.10) id QAA28071 for asbugs@watson.ibm.com; Tue, 16 May 1995 16:58:40 +0200
--* Date: Tue, 16 May 1995 16:58:40 +0200
--* Message-Id: <199505161458.QAA28071@mendel.inf.ethz.ch>
--* To: asbugs@watson.ibm.com
--* Subject: [2] conditional constants broken [condconst.as][1.1.0]

--@ Bug Number:  bug969.as 
--@ Fixed  by:  MND   
--@ Tested by:  eager0.sh 
--@ Summary:    check for existence of an export before forcing it now 

-------------------------- condconst.as ------------------------
--
-- Looks like an older bug with conditional constants that was once fixed
--
-- % axiomxl -Fx condconst.as
-- % condconst
-- Looking in Foo(SingleInteger) for bar with code 142471813
-- Export not found
--

#include "axllib.as"

Bar: Category == with { bar: SingleInteger };

Foo(R:Type): with {
	foo: R -> %;
	if R has Bar then Bar;
} == add {
	macro Rep == R;
	import from Rep;

	foo(a:R):% == per a;
	if R has Bar then bar:SingleInteger == 1;
}		

import from SingleInteger, Foo SingleInteger;
foo 1;



