88 *
99 *
1010 * IDENTIFICATION
11- * $PostgreSQL: pgsql/src/backend/catalog/heap.c,v 1.267 2004/06/04 03:24:04 tgl Exp $
11+ * $PostgreSQL: pgsql/src/backend/catalog/heap.c,v 1.268 2004/06/06 04:52:55 tgl Exp $
1212 *
1313 *
1414 * INTERFACE ROUTINES
@@ -417,9 +417,9 @@ CheckAttributeType(const char *attname, Oid atttypid)
417417 * (usually as a result of a 'retrieve into' - jolly)
418418 *
419419 * Refuse any attempt to create a pseudo-type column or one that uses a
420- * composite type. (Eventually we would like to allow standalone
421- *composite types, but that needs some nontrivial work yet,
422- *particularly TOAST support .)
420+ *non-standalone composite type. (We could support using table rowtypes
421+ *as attributes, if we were willing to make ALTER TABLE hugely more
422+ *complex, but for now let's limit the damage .. .)
423423 */
424424if (atttypid == UNKNOWNOID )
425425ereport (WARNING ,
@@ -437,11 +437,9 @@ CheckAttributeType(const char *attname, Oid atttypid)
437437}
438438else if (att_typtype == 'c' )
439439{
440- #if 0
441440Oid typrelid = get_typ_typrelid (atttypid );
442441
443442if (get_rel_relkind (typrelid )!= RELKIND_COMPOSITE_TYPE )
444- #endif
445443ereport (ERROR ,
446444(errcode (ERRCODE_INVALID_TABLE_DEFINITION ),
447445errmsg ("column \"%s\" has composite type %s" ,