__Fb_Arg_Listexpand__

Intrinsic define (macro) performed by the compiler.

Syntax
	__FB_ARG_LISTEXPAND__( macroname, macroargcount, args... )

Parameters
	macroname
		name of the macro used for extension calls
	macroargcount
		number of parameters for the 'macroname' macro
		expand the parameter list 'args...' according to the 'macroargcount' 
		value:
			- 'macroargcount > 0' : pass 'macroargcount' parameters each time
			- 'macroargcount = 0' : pass all parameters
			- 'macroargcount < 0' : for each parameter passed, the previous 
			'macroargcount' parameters are automatically removed on the next 
			pass
	args...
		argument list

Description
	Expands to one or more 'macroname( .... )' depending on the value of 
	macroargcount and number of arguments in the args... list.

	Returns empty string on invalid index, rather than compile error.

Example
	#macro m( arg... )
	   #print "   "##arg
	#endmacro

	#print "macroargcount>0 (=1):"
	__FB_ARG_LISTEXPAND__( m, 1, Hello1, Hello2, Hello3, Hello4)
	#print " "
	#print "macroargcount=0 (=0):"
	__FB_ARG_LISTEXPAND__( m, 0, Hello1, Hello2, Hello3, Hello4)
	#print " "
	#print "macroargcount<0 (=-1):"
	__FB_ARG_LISTEXPAND__( m, -1, Hello1, Hello2, Hello3, Hello4)

	/' Compiler output:
	macroargcount>0 (=1):
	   Hello1
	   Hello2
	   Hello3
	   Hello4
	 
	macroargcount=0 (=0):
	   Hello1, Hello2, Hello3, Hello4
	 
	macroargcount<0 (=-1):
	   Hello1, Hello2, Hello3, Hello4
	   Hello2, Hello3, Hello4
	   Hello3, Hello4
	   Hello4
	'/

Version
	* Since fbc 1.20.0

Differences from QB
	* New to FreeBASIC

See also
	* KeyPgDdfbargrightof__FB_ARG_RIGHTOF__
	* KeyPgDdfbargleftof__FB_ARG_LEFTOF__
	* KeyPgDdfbargcount__FB_ARG_COUNT__
	* KeyPgDdfbargextract__FB_ARG_EXTRACT__

