gambas-source-code/main/share/gb_limit.h
Benoît Minisini f275928af5 [CONFIGURATION]
* NEW: Makes better configuration warning messages when detecting libintl 
  and libiconv libraries.

[DEVELOPMENT ENVIRONMENT]
* NEW: The About dialog box was redesigned. The Hall Of Fame is now 
  displayed with a cool animation.
* NEW: The entire project was adapted to the new way of calculating
  Desktop.Scale.
* NEW: When loading a Gambas 2 form, the form editor tries to adapt to the
  new way of calculating Desktop.Scale automatically.

[COMPILER]
* BUG: Adds many error messages when a compiler limit is reached: too many 
  static symbols in a same class, too many dynamic symbols, too many 
  functions, and so on.

[GB.GTK]
* NEW: Desktop.Scale is now half the font ascent, not half the font height.
* NEW: Color.Medium() method was replaced by Color.Mix(), that takes a new
  optional argument indicating the relative weight of the second color.
  
[GB.QT]
* NEW: Desktop.Scale is now half the font ascent, not half the font height.
* NEW: Color.Medium() method was replaced by Color.Mix(), that takes a new
  optional argument indicating the relative weight of the second color.

[GB.QT.EXT]
* BUG: Editor now correctly highlight its frame according to the focus 
  change on styles that have use of that.


git-svn-id: svn://localhost/gambas/trunk@1304 867c0c6c-44f3-4631-809d-bfa615b0a4ec
2008-04-10 12:06:14 +00:00

101 lines
3.1 KiB
C

/***************************************************************************
limit.h
Compiler and interpreter limits
(c) 2000-2007 Benoit Minisini <gambas@users.sourceforge.net>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 1, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
***************************************************************************/
#ifndef __GB_LIMIT_H
#define __GB_LIMIT_H
/* Maximum number of parameters for a function - CANNOT CHANGE */
#define MAX_PARAM_FUNC 63
/* Maximum number of parameters for a subroutine - CANNOT CHANGE */
#define MAX_PARAM_SUBR 63
/* Maximum number of parameters for an operator - CANNOT CHANGE */
#define MAX_PARAM_OP 63
/* Maximum level of expression imbrication */
#define MAX_EXPR_LEVEL 255
/* Maximum number of patterns in an expression - CANNOT CHANGE */
#define MAX_EXPR_PATTERN 1023
/* Maximum length of a symbol */
#define MAX_SYMBOL_LEN 255
/* Maximum number of constants in the same class - CANNOT CHANGE */
#define MAX_CLASS_CONST 4096
/* Maximum number of static or dynamic symbols in the same class - CANNOT CHANGE */
#define MAX_CLASS_SYMBOL 2048
/* Maximum number of functions in the same class - CANNOT CHANGE */
#define MAX_CLASS_FUNCTION 2048
/* Maximum number of class uses in the same class - CANNOT CHANGE */
#define MAX_CLASS_CLASS 2048
/* Maximum number of class uses in the same class - CANNOT CHANGE */
#define MAX_CLASS_EXTERN 256
/* Maximum number of events in the same class - CANNOT CHANGE */
#define MAX_CLASS_EVENT 256
/* Maximum number of unknown symbols in the same class - CANNOT CHANGE */
#define MAX_CLASS_UNKNOWN 65536
/* Maximum number of array declarations in the same class - CANNOT CHANGE */
#define MAX_CLASS_ARRAY 32678
/* Maximum number of local variables in a function - CANNOT CHANGE */
#define MAX_LOCAL_SYMBOL 127
/* Maximum level of control structures imbrication */
#define MAX_CTRL_LEVEL 32
/* Maximum number of dimensions in an array */
#define MAX_ARRAY_DIM 8
/* Maximum length of a file path */
#define MAX_PATH 512
/* Maximum level of controls imbrication in a form */
#define MAX_FORM_PARENT 32
/* Maximum number of possible comparisons in one CASE instruction */
#define MAX_CASE_EXPR 32
/* Maximum number of breakpoints */
#define MAX_BREAKPOINT 255
/* Number of bytes written at once in a single input/output request */
#define MAX_IO 4096
/* Maximum level of class inheritance */
#define MAX_INHERITANCE 16
/* Maximum length of an error message */
#define MAX_ERROR_MSG 511
#endif