1 | /* Copyright (C) 1991-2019 Free Software Foundation, Inc. |
---|---|

2 | This file is part of the GNU C Library. |

3 | |

4 | The GNU C Library is free software; you can redistribute it and/or |

5 | modify it under the terms of the GNU Lesser General Public |

6 | License as published by the Free Software Foundation; either |

7 | version 2.1 of the License, or (at your option) any later version. |

8 | |

9 | The GNU C Library is distributed in the hope that it will be useful, |

10 | but WITHOUT ANY WARRANTY; without even the implied warranty of |

11 | MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |

12 | Lesser General Public License for more details. |

13 | |

14 | You should have received a copy of the GNU Lesser General Public |

15 | License along with the GNU C Library; if not, see |

16 | <http://www.gnu.org/licenses/>. */ |

17 | |

18 | /* |

19 | * Never include this file directly; include <limits.h> instead. |

20 | */ |

21 | |

22 | #ifndef _BITS_POSIX2_LIM_H |

23 | #define _BITS_POSIX2_LIM_H 1 |

24 | |

25 | |

26 | /* The maximum `ibase' and `obase' values allowed by the `bc' utility. */ |

27 | #define _POSIX2_BC_BASE_MAX 99 |

28 | |

29 | /* The maximum number of elements allowed in an array by the `bc' utility. */ |

30 | #define _POSIX2_BC_DIM_MAX 2048 |

31 | |

32 | /* The maximum `scale' value allowed by the `bc' utility. */ |

33 | #define _POSIX2_BC_SCALE_MAX 99 |

34 | |

35 | /* The maximum length of a string constant accepted by the `bc' utility. */ |

36 | #define _POSIX2_BC_STRING_MAX 1000 |

37 | |

38 | /* The maximum number of weights that can be assigned to an entry of |

39 | the LC_COLLATE `order' keyword in the locale definition file. */ |

40 | #define _POSIX2_COLL_WEIGHTS_MAX 2 |

41 | |

42 | /* The maximum number of expressions that can be nested |

43 | within parentheses by the `expr' utility. */ |

44 | #define _POSIX2_EXPR_NEST_MAX 32 |

45 | |

46 | /* The maximum length, in bytes, of an input line. */ |

47 | #define _POSIX2_LINE_MAX 2048 |

48 | |

49 | /* The maximum number of repeated occurrences of a regular expression |

50 | permitted when using the interval notation `\{M,N\}'. */ |

51 | #define _POSIX2_RE_DUP_MAX 255 |

52 | |

53 | /* The maximum number of bytes in a character class name. We have no |

54 | fixed limit, 2048 is a high number. */ |

55 | #define _POSIX2_CHARCLASS_NAME_MAX 14 |

56 | |

57 | |

58 | /* These values are implementation-specific, |

59 | and may vary within the implementation. |

60 | Their precise values can be obtained from sysconf. */ |

61 | |

62 | #ifndef BC_BASE_MAX |

63 | #define BC_BASE_MAX _POSIX2_BC_BASE_MAX |

64 | #endif |

65 | #ifndef BC_DIM_MAX |

66 | #define BC_DIM_MAX _POSIX2_BC_DIM_MAX |

67 | #endif |

68 | #ifndef BC_SCALE_MAX |

69 | #define BC_SCALE_MAX _POSIX2_BC_SCALE_MAX |

70 | #endif |

71 | #ifndef BC_STRING_MAX |

72 | #define BC_STRING_MAX _POSIX2_BC_STRING_MAX |

73 | #endif |

74 | #ifndef COLL_WEIGHTS_MAX |

75 | #define COLL_WEIGHTS_MAX 255 |

76 | #endif |

77 | #ifndef EXPR_NEST_MAX |

78 | #define EXPR_NEST_MAX _POSIX2_EXPR_NEST_MAX |

79 | #endif |

80 | #ifndef LINE_MAX |

81 | #define LINE_MAX _POSIX2_LINE_MAX |

82 | #endif |

83 | #ifndef CHARCLASS_NAME_MAX |

84 | #define CHARCLASS_NAME_MAX 2048 |

85 | #endif |

86 | |

87 | /* This value is defined like this in regex.h. */ |

88 | #define RE_DUP_MAX (0x7fff) |

89 | |

90 | #endif /* bits/posix2_lim.h */ |

91 |