Index: doc/TODO
===================================================================
RCS file: /home/projects/pgsql/cvsroot/pgsql/doc/TODO,v
retrieving revision 1.464
diff -c -r1.464 TODO
*** doc/TODO	2001/05/18 16:28:12	1.464
--- doc/TODO	2001/05/20 00:35:29
***************
*** 140,146 ****
  * Allow RULE recompilation
  * Add BETWEEN ASYMMETRIC/SYMMETRIC
  * Change LIMIT val,val to offset,limit to match MySQL
! * Allow Pl/PgSQL's RAISE function to take expressions
  * ALTER
  	* ALTER TABLE ADD COLUMN to inherited table put column in wrong place
  	  [inheritance]
--- 140,146 ----
  * Allow RULE recompilation
  * Add BETWEEN ASYMMETRIC/SYMMETRIC
  * Change LIMIT val,val to offset,limit to match MySQL
! * Allow PL/PgSQL's RAISE function to take expressions
  * ALTER
  	* ALTER TABLE ADD COLUMN to inherited table put column in wrong place
  	  [inheritance]
Index: src/backend/parser/parse_target.c
===================================================================
RCS file: /home/projects/pgsql/cvsroot/pgsql/src/backend/parser/parse_target.c,v
retrieving revision 1.66
diff -c -r1.66 parse_target.c
*** src/backend/parser/parse_target.c	2001/03/22 03:59:41	1.66
--- src/backend/parser/parse_target.c	2001/05/20 00:35:30
***************
*** 154,166 ****
  		}
  		else
  		{
! 			/* Everything else but Attr */
! 			p_target = lappend(p_target,
! 							   transformTargetEntry(pstate,
! 													res->val,
! 													NULL,
! 													res->name,
! 													false));
  		}
  
  		targetlist = lnext(targetlist);
--- 154,182 ----
  		}
  		else
  		{
! 			Node	   *rteorjoin;
! 			int			sublevels_up;
! 
! 			if (IsA(res->val, Ident) && ((Ident *) res->val)->isRel)
! 			{
! 				rteorjoin = refnameRangeOrJoinEntry(pstate,
! 												((Ident *) res->val)->name,
! 												&sublevels_up);
! 				Assert(rteorjoin != NULL);
! 				p_target = nconc(p_target,
! 							expandRelAttrs(pstate,
! 							   (RangeTblEntry *) rteorjoin));
! 			}
! 			else
! 			{
! 				/* Everything else */
! 				p_target = lappend(p_target,
! 								   transformTargetEntry(pstate,
! 														res->val,
! 														NULL,
! 														res->name,
! 														false));
! 			}
  		}
  
  		targetlist = lnext(targetlist);
