> Bruce and I were talking about that last night. I think it could be
> fixed by having the grammar treat
> NOT DEFERRABLE
> DEFERRABLE
> INITIALLY IMMEDIATE
> INITIALLY DEFERRED
> as independent ColConstraintElem clauses, and then have a post-pass in
> analyze.c that folds the flags into the preceding REFERENCES clause
> (and complains if they don't appear right after a REFERENCES clause).
> Pretty grotty, especially since you probably wouldn't want to do the
> same thing for the other uses of these clauses in TableConstraint
> and CreateTrigStmt ... but possibly cleaner than a lexer hack.
analyze.c already does a grotty scan of the constraint clauses to push
them out into the place Vadim's implementation expects them. We could
identify the FK clauses and push them somewhere else, no problem
(well, at least in principle ;).
- Thomas
--
Thomas Lockhart lockhart@alumni.caltech.edu
South Pasadena, California