From c23400278ad7a1a44cb9b469c4635ea29cb12b25 Mon Sep 17 00:00:00 2001 From: Thomas Preud'homme Date: Mon, 7 Feb 2011 23:46:20 +0100 Subject: [PATCH] Fix incorrect use of basic type as bitflags. Fix incorrect use of basic types as bitflags and inefficiency in commit cf36410e30b3c18be6c556158b2d0d0938f5b77d --- tccgen.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/tccgen.c b/tccgen.c index 8464e64..d806a38 100644 --- a/tccgen.c +++ b/tccgen.c @@ -5423,10 +5423,6 @@ ST_FUNC void decl(int l) while (1) { /* iterate thru each declaration */ type = btype; type_decl(&type, &ad, &v, TYPE_DIRECT); - if (((type.t & (VT_STATIC|VT_FUNC)) == (VT_STATIC|VT_FUNC)) - && (l == VT_LOCAL)) { - error("Function without file scope cannot be static"); - } #if 0 { char buf[500]; @@ -5435,6 +5431,9 @@ ST_FUNC void decl(int l) } #endif if ((type.t & VT_BTYPE) == VT_FUNC) { + if ((type.t & VT_STATIC) && (l == VT_LOCAL)) { + error("function without file scope cannot be static"); + } /* if old style function prototype, we accept a declaration list */ sym = type.ref;