included more characters into xli tag character set.
improved detection of __float128 support
This commit is contained in:
		
							
								
								
									
										34
									
								
								qse/configure
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										34
									
								
								qse/configure
									
									
									
									
										vendored
									
									
								
							| @ -20080,6 +20080,40 @@ fi | ||||
| rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext | ||||
| fi | ||||
|  | ||||
| if test ${ac_cv_sizeof___float128} -gt 0 | ||||
| then | ||||
| 	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking __float128 with linking" >&5 | ||||
| $as_echo_n "checking __float128 with linking... " >&6; } | ||||
| 	cat confdefs.h - <<_ACEOF >conftest.$ac_ext | ||||
| /* end confdefs.h.  */ | ||||
| #include <stdio.h> | ||||
| int | ||||
| main () | ||||
| { | ||||
|  | ||||
| 			__float128 x, y, z; | ||||
| 			z = x * y + x; | ||||
| 			printf ("%p", (char*)(int)z); | ||||
|  | ||||
|   ; | ||||
|   return 0; | ||||
| } | ||||
| _ACEOF | ||||
| if ac_fn_c_try_link "$LINENO"; then : | ||||
|   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 | ||||
| $as_echo "yes" >&6; } | ||||
| else | ||||
|  | ||||
| 			{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 | ||||
| $as_echo "no" >&6; } | ||||
| 			ac_cv_sizeof___float128=0 | ||||
|  | ||||
|  | ||||
| fi | ||||
| rm -f core conftest.err conftest.$ac_objext \ | ||||
|     conftest$ac_exeext conftest.$ac_ext | ||||
| fi | ||||
|  | ||||
|  | ||||
| cat >>confdefs.h <<_ACEOF | ||||
| #define QSE_SIZEOF_CHAR ${ac_cv_sizeof_char} | ||||
|  | ||||
| @ -442,6 +442,26 @@ then | ||||
| 	) | ||||
| fi | ||||
|  | ||||
| dnl Some compilers doesn't seem to have full support for __float128  | ||||
| dnl even if the type is available. | ||||
| if test ${ac_cv_sizeof___float128} -gt 0 | ||||
| then | ||||
| 	AC_MSG_CHECKING([__float128 with linking]) | ||||
| 	AC_TRY_LINK( | ||||
| 		[#include <stdio.h>], | ||||
| 		[ | ||||
| 			__float128 x, y, z; | ||||
| 			z = x * y + x; | ||||
| 			printf ("%p", (char*)(int)z); | ||||
| 		], | ||||
| 		[AC_MSG_RESULT(yes)], | ||||
| 		[ | ||||
| 			AC_MSG_RESULT(no) | ||||
| 			ac_cv_sizeof___float128=0 | ||||
| 		] | ||||
| 	) | ||||
| fi | ||||
|  | ||||
| AC_DEFINE_UNQUOTED(QSE_SIZEOF_CHAR, ${ac_cv_sizeof_char}, [sizeof(char)]) | ||||
| AC_DEFINE_UNQUOTED(QSE_SIZEOF_SHORT, ${ac_cv_sizeof_short}, [sizeof(short)]) | ||||
| AC_DEFINE_UNQUOTED(QSE_SIZEOF_INT, ${ac_cv_sizeof_int}, [sizeof(int)]) | ||||
|  | ||||
| @ -462,8 +462,8 @@ retry: | ||||
| 		int lead_digit = QSE_ISDIGIT(c); | ||||
| 		int all_digits = 1; | ||||
|  | ||||
| 		/* a normal identifier can be composed of wider varieties of characters | ||||
| 		 * than a keyword/directive */ | ||||
| 		/* a normal identifier can be composed of wider varieties of  | ||||
| 		 * characters than a keyword/directive */ | ||||
| 		while (1) | ||||
| 		{ | ||||
| 			ADD_TOKEN_CHAR (xli, tok, c); | ||||
| @ -596,7 +596,9 @@ retry: | ||||
| 				break; | ||||
| 			} | ||||
|  | ||||
| 			if (!QSE_ISALNUM(c) && c != QSE_T('-') && c != QSE_T('_')) | ||||
| 			if (!QSE_ISALNUM(c) && c != QSE_T('-') && c != QSE_T('_') &&  | ||||
| 			    c != QSE_T(':') && c != QSE_T('*') && c != QSE_T('/') &&  | ||||
| 			    c != QSE_T(',') && c != QSE_T('.') && c != QSE_T('|')) | ||||
| 			{ | ||||
| 				qse_char_t cc = (qse_char_t)c; | ||||
| 				qse_cstr_t ea; | ||||
|  | ||||
		Reference in New Issue
	
	Block a user