I am trying to generate orthogonal polynomials in R, but I keep getting an error I don't understand

> poly(1:1000, 50)
Error in poly(1:1000, 50) : 
  'degree' must be less than number of unique points

Surely the number of unique points is 1000? What does it mean? Is this a bug, and if so does anyone know I work around?

Edit: This appears to kick in for degree > 27 for any number of points - is this an undocumented limit?

Edit
Report