1307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendling// RUN: %clang_cc1 -fsyntax-only %s 2307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendling// Make sure OpenBSD's bounded extension is accepted. 3307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendling 4307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendlingtypedef long ssize_t; 5307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendlingtypedef unsigned long size_t; 6307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendlingtypedef struct FILE FILE; 7307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendling 8307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendlingssize_t read(int, void *, size_t) 9307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendling __attribute__((__bounded__(__buffer__,2,3))); 10307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendlingint readlink(const char *, char *, size_t) 11307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendling __attribute__((__bounded__(__string__,2,3))); 12307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendlingsize_t fread(void *, size_t, size_t, FILE *) 13307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendling __attribute__((__bounded__(__size__,1,3,2))); 14307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendlingchar *getwd(char *) 15307c92ecb82e59a8fa82912906e1b168a157cb82Bill Wendling __attribute__((__bounded__(__minbytes__,1,1024)));