I'm using GPC 19991030. I'm having a problem with the following code fragment: shared_data^.compr[J].awel:=[]; which does not result in awel becoming the null set (it retains its existing values). If I change this to: shared_data^.compr[J].awel:=[1]-[1]; then awel does become the null set. shared_data is a large complicated record. compr is an array of a fairly simple packed record and awel is a set of 1..120. I have tried hard to produce a simple test problem to demonstrate the problem but sadly all my test cases work perfectly. Anybody seen anything similar or any suggestions as to anything else I should investigate? -- Martin Liddle, Tynemouth Computer Services, 27 Garforth Close, Cramlington, Northumberland, England, NE23 6EW. Phone: 01670-712624. Fax: 01670-717324.