summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohn Mark Bell <jmb@netsurf-browser.org>2009-04-15 16:28:30 +0000
committerJohn Mark Bell <jmb@netsurf-browser.org>2009-04-15 16:28:30 +0000
commitf3871ddf33d016499a7dac7613e9acbc0ca47eb2 (patch)
treebc51de5369e2b7d61d9c97903b8c6fa5c2e3a081
parent7ab2ca6642902f0e3ca095420eaf6a97e5b639ed (diff)
downloadlibcss-f3871ddf33d016499a7dac7613e9acbc0ca47eb2.tar.gz
libcss-f3871ddf33d016499a7dac7613e9acbc0ca47eb2.tar.bz2
A bunch of c89.
Lose trailing commas. GCC 2.95 compatibility. svn path=/trunk/libcss/; revision=7099
-rw-r--r--Makefile13
-rw-r--r--include/libcss/types.h2
-rw-r--r--src/bytecode/bytecode.h2
-rw-r--r--src/bytecode/opcodes.h166
-rw-r--r--src/lex/lex.h2
-rw-r--r--src/parse/language.c13
-rw-r--r--src/parse/parse.c35
-rw-r--r--src/parse/parse.h4
-rw-r--r--src/parse/properties.c22
9 files changed, 137 insertions, 122 deletions
diff --git a/Makefile b/Makefile
index 2a93926..c70eb49 100644
--- a/Makefile
+++ b/Makefile
@@ -10,11 +10,20 @@ include build/makefiles/Makefile.tools
TESTRUNNER := $(PERL) build/testtools/testrunner.pl
# Toolchain flags
-WARNFLAGS := -Wall -Wextra -Wundef -Wpointer-arith -Wcast-align \
+WARNFLAGS := -Wall -Wundef -Wpointer-arith -Wcast-align \
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes \
-Wmissing-declarations -Wnested-externs -Werror -pedantic
-CFLAGS := $(CFLAGS) -std=c99 -D_BSD_SOURCE -I$(CURDIR)/include/ \
+ifneq ($(GCCVER),2)
+ WARNFLAGS := $(WARNFLAGS) -Wextra
+endif
+CFLAGS := $(CFLAGS) -D_BSD_SOURCE -I$(CURDIR)/include/ \
-I$(CURDIR)/src $(WARNFLAGS)
+ifneq ($(GCCVER),2)
+ CFLAGS := $(CFLAGS) -std=c99
+else
+ # __inline__ is a GCCism
+ CFLAGS := $(CFLAGS) -Dinline="__inline__"
+endif
# Parserutils & wapcaplet
ifneq ($(PKGCONFIG),)
diff --git a/include/libcss/types.h b/include/libcss/types.h
index 000c0f1..751f290 100644
--- a/include/libcss/types.h
+++ b/include/libcss/types.h
@@ -24,7 +24,7 @@ typedef enum css_charset_source {
CSS_CHARSET_REFERRED = 1, /**< From referring document */
CSS_CHARSET_METADATA = 2, /**< From linking metadata */
CSS_CHARSET_DOCUMENT = 3, /**< Defined in document */
- CSS_CHARSET_DICTATED = 4, /**< Dictated by client */
+ CSS_CHARSET_DICTATED = 4 /**< Dictated by client */
} css_charset_source;
/**
diff --git a/src/bytecode/bytecode.h b/src/bytecode/bytecode.h
index 4235ab2..5400474 100644
--- a/src/bytecode/bytecode.h
+++ b/src/bytecode/bytecode.h
@@ -18,7 +18,7 @@ typedef enum css_properties opcode;
enum flag {
FLAG_IMPORTANT = (1<<0),
- FLAG_INHERIT = (1<<1),
+ FLAG_INHERIT = (1<<1)
};
typedef enum unit {
diff --git a/src/bytecode/opcodes.h b/src/bytecode/opcodes.h
index eb68c48..966ed88 100644
--- a/src/bytecode/opcodes.h
+++ b/src/bytecode/opcodes.h
@@ -25,22 +25,22 @@ enum op_azimuth {
AZIMUTH_CENTER_RIGHT = 0x0005,
AZIMUTH_RIGHT = 0x0006,
AZIMUTH_FAR_RIGHT = 0x0007,
- AZIMUTH_RIGHT_SIDE = 0x0008,
+ AZIMUTH_RIGHT_SIDE = 0x0008
};
enum op_background_attachment {
BACKGROUND_ATTACHMENT_FIXED = 0x0000,
- BACKGROUND_ATTACHMENT_SCROLL = 0x0001,
+ BACKGROUND_ATTACHMENT_SCROLL = 0x0001
};
enum op_background_color {
BACKGROUND_COLOR_TRANSPARENT = 0x0000,
- BACKGROUND_COLOR_SET = 0x0080,
+ BACKGROUND_COLOR_SET = 0x0080
};
enum op_background_image {
BACKGROUND_IMAGE_URI = 0x0080,
- BACKGROUND_IMAGE_NONE = 0x0000,
+ BACKGROUND_IMAGE_NONE = 0x0000
};
enum op_background_position {
@@ -52,28 +52,28 @@ enum op_background_position {
BACKGROUND_POSITION_VERT_SET = 0x0008,
BACKGROUND_POSITION_VERT_CENTER = 0x0000,
BACKGROUND_POSITION_VERT_BOTTOM = 0x0001,
- BACKGROUND_POSITION_VERT_TOP = 0x0002,
+ BACKGROUND_POSITION_VERT_TOP = 0x0002
};
enum op_background_repeat {
BACKGROUND_REPEAT_NO_REPEAT = 0x0000,
BACKGROUND_REPEAT_REPEAT_X = 0x0001,
BACKGROUND_REPEAT_REPEAT_Y = 0x0002,
- BACKGROUND_REPEAT_REPEAT = 0x0003,
+ BACKGROUND_REPEAT_REPEAT = 0x0003
};
enum op_border_collapse {
BORDER_COLLAPSE_SEPARATE = 0x0000,
- BORDER_COLLAPSE_COLLAPSE = 0x0001,
+ BORDER_COLLAPSE_COLLAPSE = 0x0001
};
enum op_border_spacing {
- BORDER_SPACING_SET = 0x0080,
+ BORDER_SPACING_SET = 0x0080
};
enum op_border_color {
BORDER_COLOR_SET = 0x0080,
- BORDER_COLOR_TRANSPARENT = 0x0000,
+ BORDER_COLOR_TRANSPARENT = 0x0000
};
enum op_border_style {
@@ -86,31 +86,31 @@ enum op_border_style {
BORDER_STYLE_GROOVE = 0x0006,
BORDER_STYLE_RIDGE = 0x0007,
BORDER_STYLE_INSET = 0x0008,
- BORDER_STYLE_OUTSET = 0x0009,
+ BORDER_STYLE_OUTSET = 0x0009
};
enum op_border_width {
BORDER_WIDTH_SET = 0x0080,
BORDER_WIDTH_THIN = 0x0000,
BORDER_WIDTH_MEDIUM = 0x0001,
- BORDER_WIDTH_THICK = 0x0002,
+ BORDER_WIDTH_THICK = 0x0002
};
enum op_bottom {
BOTTOM_SET = 0x0080,
- BOTTOM_AUTO = 0x0000,
+ BOTTOM_AUTO = 0x0000
};
enum op_caption_side {
CAPTION_SIDE_TOP = 0x0000,
- CAPTION_SIDE_BOTTOM = 0x0001,
+ CAPTION_SIDE_BOTTOM = 0x0001
};
enum op_clear {
CLEAR_NONE = 0x0000,
CLEAR_LEFT = 0x0001,
CLEAR_RIGHT = 0x0002,
- CLEAR_BOTH = 0x0003,
+ CLEAR_BOTH = 0x0003
};
enum op_clip {
@@ -122,11 +122,11 @@ enum op_clip {
CLIP_RECT_BOTTOM_AUTO = 0x0020,
CLIP_RECT_LEFT_AUTO = 0x0040,
- CLIP_AUTO = 0x0000,
+ CLIP_AUTO = 0x0000
};
enum op_color {
- COLOR_SET = 0x0080,
+ COLOR_SET = 0x0080
};
enum op_content {
@@ -144,29 +144,29 @@ enum op_content {
CONTENT_OPEN_QUOTE = 0x0002,
CONTENT_CLOSE_QUOTE = 0x0003,
CONTENT_NO_OPEN_QUOTE = 0x0004,
- CONTENT_NO_CLOSE_QUOTE = 0x0005,
+ CONTENT_NO_CLOSE_QUOTE = 0x0005
};
enum op_counter_increment {
COUNTER_INCREMENT_NAMED = 0x0080,
- COUNTER_INCREMENT_NONE = 0x0000,
+ COUNTER_INCREMENT_NONE = 0x0000
};
enum op_counter_reset {
COUNTER_RESET_NAMED = 0x0080,
- COUNTER_RESET_NONE = 0x0000,
+ COUNTER_RESET_NONE = 0x0000
};
enum op_cue_after {
CUE_AFTER_URI = 0x0080,
- CUE_AFTER_NONE = 0x0000,
+ CUE_AFTER_NONE = 0x0000
};
enum op_cue_before {
CUE_BEFORE_URI = 0x0080,
- CUE_BEFORE_NONE = 0x0000,
+ CUE_BEFORE_NONE = 0x0000
};
enum op_cursor {
@@ -188,12 +188,12 @@ enum op_cursor {
CURSOR_TEXT = 0x000d,
CURSOR_WAIT = 0x000e,
CURSOR_HELP = 0x000f,
- CURSOR_PROGRESS = 0x0010,
+ CURSOR_PROGRESS = 0x0010
};
enum op_direction {
DIRECTION_LTR = 0x0000,
- DIRECTION_RTL = 0x0001,
+ DIRECTION_RTL = 0x0001
};
enum op_display {
@@ -212,7 +212,7 @@ enum op_display {
DISPLAY_TABLE_COLUMN = 0x000c,
DISPLAY_TABLE_CELL = 0x000d,
DISPLAY_TABLE_CAPTION = 0x000e,
- DISPLAY_NONE = 0x000f,
+ DISPLAY_NONE = 0x000f
};
enum op_elevation {
@@ -221,18 +221,18 @@ enum op_elevation {
ELEVATION_LEVEL = 0x0001,
ELEVATION_ABOVE = 0x0002,
ELEVATION_HIGHER = 0x0003,
- ELEVATION_LOWER = 0x0004,
+ ELEVATION_LOWER = 0x0004
};
enum op_empty_cells {
EMPTY_CELLS_SHOW = 0x0000,
- EMPTY_CELLS_HIDE = 0x0001,
+ EMPTY_CELLS_HIDE = 0x0001
};
enum op_float {
FLOAT_LEFT = 0x0000,
FLOAT_RIGHT = 0x0001,
- FLOAT_NONE = 0x0002,
+ FLOAT_NONE = 0x0002
};
enum op_font_family {
@@ -245,7 +245,7 @@ enum op_font_family {
FONT_FAMILY_SANS_SERIF = 0x0002,
FONT_FAMILY_CURSIVE = 0x0003,
FONT_FAMILY_FANTASY = 0x0004,
- FONT_FAMILY_MONOSPACE = 0x0005,
+ FONT_FAMILY_MONOSPACE = 0x0005
};
enum op_font_size {
@@ -259,18 +259,18 @@ enum op_font_size {
FONT_SIZE_X_LARGE = 0x0005,
FONT_SIZE_XX_LARGE = 0x0006,
FONT_SIZE_LARGER = 0x0007,
- FONT_SIZE_SMALLER = 0x0008,
+ FONT_SIZE_SMALLER = 0x0008
};
enum op_font_style {
FONT_STYLE_NORMAL = 0x0000,
FONT_STYLE_ITALIC = 0x0001,
- FONT_STYLE_OBLIQUE = 0x0002,
+ FONT_STYLE_OBLIQUE = 0x0002
};
enum op_font_variant {
FONT_VARIANT_NORMAL = 0x0000,
- FONT_VARIANT_SMALL_CAPS = 0x0001,
+ FONT_VARIANT_SMALL_CAPS = 0x0001
};
enum op_font_weight {
@@ -286,22 +286,22 @@ enum op_font_weight {
FONT_WEIGHT_600 = 0x0009,
FONT_WEIGHT_700 = 0x000a,
FONT_WEIGHT_800 = 0x000b,
- FONT_WEIGHT_900 = 0x000c,
+ FONT_WEIGHT_900 = 0x000c
};
enum op_height {
HEIGHT_SET = 0x0080,
- HEIGHT_AUTO = 0x0000,
+ HEIGHT_AUTO = 0x0000
};
enum op_left {
LEFT_SET = 0x0080,
- LEFT_AUTO = 0x0000,
+ LEFT_AUTO = 0x0000
};
enum op_letter_spacing {
LETTER_SPACING_SET = 0x0080,
- LETTER_SPACING_NORMAL = 0x0000,
+ LETTER_SPACING_NORMAL = 0x0000
};
enum op_line_height {
@@ -312,12 +312,12 @@ enum op_line_height {
enum op_list_style_image {
LIST_STYLE_IMAGE_URI = 0x0080,
- LIST_STYLE_IMAGE_NONE = 0x0000,
+ LIST_STYLE_IMAGE_NONE = 0x0000
};
enum op_list_style_position {
LIST_STYLE_POSITION_INSIDE = 0x0000,
- LIST_STYLE_POSITION_OUTSIDE = 0x0001,
+ LIST_STYLE_POSITION_OUTSIDE = 0x0001
};
enum op_list_style_type {
@@ -335,39 +335,39 @@ enum op_list_style_type {
LIST_STYLE_TYPE_GEORGIAN = 0x000b,
LIST_STYLE_TYPE_LOWER_ALPHA = 0x000c,
LIST_STYLE_TYPE_UPPER_ALPHA = 0x000d,
- LIST_STYLE_TYPE_NONE = 0x000e,
+ LIST_STYLE_TYPE_NONE = 0x000e
};
enum op_margin {
MARGIN_SET = 0x0080,
- MARGIN_AUTO = 0x0000,
+ MARGIN_AUTO = 0x0000
};
enum op_max_height {
MAX_HEIGHT_SET = 0x0080,
- MAX_HEIGHT_NONE = 0x0000,
+ MAX_HEIGHT_NONE = 0x0000
};
enum op_max_width {
MAX_WIDTH_SET = 0x0080,
- MAX_WIDTH_NONE = 0x0000,
+ MAX_WIDTH_NONE = 0x0000
};
enum op_min_height {
- MIN_HEIGHT_SET = 0x0080,
+ MIN_HEIGHT_SET = 0x0080
};
enum op_min_width {
- MIN_WIDTH_SET = 0x0080,
+ MIN_WIDTH_SET = 0x0080
};
enum op_orphans {
- ORPHANS_SET = 0x0080,
+ ORPHANS_SET = 0x0080
};
enum op_outline_color {
OUTLINE_COLOR_SET = 0x0080,
- OUTLINE_COLOR_INVERT = 0x0000,
+ OUTLINE_COLOR_INVERT = 0x0000
};
enum op_outline_style {
@@ -380,25 +380,25 @@ enum op_outline_style {
OUTLINE_STYLE_GROOVE = BORDER_STYLE_GROOVE,
OUTLINE_STYLE_RIDGE = BORDER_STYLE_RIDGE,
OUTLINE_STYLE_INSET = BORDER_STYLE_INSET,
- OUTLINE_STYLE_OUTSET = BORDER_STYLE_OUTSET,
+ OUTLINE_STYLE_OUTSET = BORDER_STYLE_OUTSET
};
enum op_outline_width {
OUTLINE_WIDTH_SET = BORDER_WIDTH_SET,
OUTLINE_WIDTH_THIN = BORDER_WIDTH_THIN,
OUTLINE_WIDTH_MEDIUM = BORDER_WIDTH_MEDIUM,
- OUTLINE_WIDTH_THICK = BORDER_WIDTH_THICK,
+ OUTLINE_WIDTH_THICK = BORDER_WIDTH_THICK
};
enum op_overflow {
OVERFLOW_VISIBLE = 0x0000,
OVERFLOW_HIDDEN = 0x0001,
OVERFLOW_SCROLL = 0x0002,
- OVERFLOW_AUTO = 0x0003,
+ OVERFLOW_AUTO = 0x0003
};
enum op_padding {
- PADDING_SET = 0x0080,
+ PADDING_SET = 0x0080
};
enum op_page_break_after {
@@ -406,7 +406,7 @@ enum op_page_break_after {
PAGE_BREAK_AFTER_ALWAYS = 0x0001,
PAGE_BREAK_AFTER_AVOID = 0x0002,
PAGE_BREAK_AFTER_LEFT = 0x0003,
- PAGE_BREAK_AFTER_RIGHT = 0x0004,
+ PAGE_BREAK_AFTER_RIGHT = 0x0004
};
enum op_page_break_before {
@@ -414,24 +414,24 @@ enum op_page_break_before {
PAGE_BREAK_BEFORE_ALWAYS = 0x0001,
PAGE_BREAK_BEFORE_AVOID = 0x0002,
PAGE_BREAK_BEFORE_LEFT = 0x0003,
- PAGE_BREAK_BEFORE_RIGHT = 0x0004,
+ PAGE_BREAK_BEFORE_RIGHT = 0x0004
};
enum op_page_break_inside {
PAGE_BREAK_INSIDE_AUTO = 0x0000,
- PAGE_BREAK_INSIDE_AVOID = 0x0001,
+ PAGE_BREAK_INSIDE_AVOID = 0x0001
};
enum op_pause_after {
- PAUSE_AFTER_SET = 0x0080,
+ PAUSE_AFTER_SET = 0x0080
};
enum op_pause_before {
- PAUSE_BEFORE_SET = 0x0080,
+ PAUSE_BEFORE_SET = 0x0080
};
enum op_pitch_range {
- PITCH_RANGE_SET = 0x0080,
+ PITCH_RANGE_SET = 0x0080
};
enum op_pitch {
@@ -441,7 +441,7 @@ enum op_pitch {
PITCH_LOW = 0x0001,
PITCH_MEDIUM = 0x0002,
PITCH_HIGH = 0x0003,
- PITCH_X_HIGH = 0x0004,
+ PITCH_X_HIGH = 0x0004
};
enum op_play_during {
@@ -451,51 +451,51 @@ enum op_play_during {
PLAY_DURING_REPEAT = (1<<5),
PLAY_DURING_AUTO = 0x0000,
- PLAY_DURING_NONE = 0x0001,
+ PLAY_DURING_NONE = 0x0001
};
enum op_position {
POSITION_STATIC = 0x0000,
POSITION_RELATIVE = 0x0001,
POSITION_ABSOLUTE = 0x0002,
- POSITION_FIXED = 0x0003,
+ POSITION_FIXED = 0x0003
};
enum op_quotes {
QUOTES_STRING = 0x0080,
- QUOTES_NONE = 0x0000,
+ QUOTES_NONE = 0x0000
};
enum op_richness {
- RICHNESS_SET = 0x0080,
+ RICHNESS_SET = 0x0080
};
enum op_right {
RIGHT_SET = 0x0080,
- RIGHT_AUTO = 0x0000,
+ RIGHT_AUTO = 0x0000
};
enum op_speak_header {
SPEAK_HEADER_ONCE = 0x0000,
- SPEAK_HEADER_ALWAYS = 0x0001,
+ SPEAK_HEADER_ALWAYS = 0x0001
};
enum op_speak_numeral {
SPEAK_NUMERAL_DIGITS = 0x0000,
- SPEAK_NUMERAL_CONTINUOUS = 0x0001,
+ SPEAK_NUMERAL_CONTINUOUS = 0x0001
};
enum op_speak_punctuation {
SPEAK_PUNCTUATION_CODE = 0x0000,
- SPEAK_PUNCTUATION_NONE = 0x0001,
+ SPEAK_PUNCTUATION_NONE = 0x0001
};
enum op_speak {
SPEAK_NORMAL = 0x0000,
SPEAK_NONE = 0x0001,
- SPEAK_SPELL_OUT = 0x0002,
+ SPEAK_SPELL_OUT = 0x0002
};
enum op_speech_rate {
@@ -507,23 +507,23 @@ enum op_speech_rate {
SPEECH_RATE_FAST = 0x0003,
SPEECH_RATE_X_FAST = 0x0004,
SPEECH_RATE_FASTER = 0x0005,
- SPEECH_RATE_SLOWER = 0x0006,
+ SPEECH_RATE_SLOWER = 0x0006
};
enum op_stress {
- STRESS_SET = 0x0080,
+ STRESS_SET = 0x0080
};
enum op_table_layout {
TABLE_LAYOUT_AUTO = 0x0000,
- TABLE_LAYOUT_FIXED = 0x0001,
+ TABLE_LAYOUT_FIXED = 0x0001
};
enum op_text_align {
TEXT_ALIGN_LEFT = 0x0000,
TEXT_ALIGN_RIGHT = 0x0001,
TEXT_ALIGN_CENTER = 0x0002,
- TEXT_ALIGN_JUSTIFY = 0x0003,
+ TEXT_ALIGN_JUSTIFY = 0x0003
};
enum op_text_decoration {
@@ -532,30 +532,30 @@ enum op_text_decoration {
TEXT_DECORATION_BLINK = (1<<3),
TEXT_DECORATION_LINE_THROUGH = (1<<2),
TEXT_DECORATION_OVERLINE = (1<<1),
- TEXT_DECORATION_UNDERLINE = (1<<0),
+ TEXT_DECORATION_UNDERLINE = (1<<0)
};
enum op_text_indent {
- TEXT_INDENT_SET = 0x0080,
+ TEXT_INDENT_SET = 0x0080
};
enum op_text_transform {
TEXT_TRANSFORM_CAPITALIZE = 0x0000,
TEXT_TRANSFORM_UPPERCASE = 0x0001,
TEXT_TRANSFORM_LOWERCASE = 0x0002,
- TEXT_TRANSFORM_NONE = 0x0003,
+ TEXT_TRANSFORM_NONE = 0x0003
};
enum op_top {
TOP_SET = 0x0080,
- TOP_AUTO = 0x0000,
+ TOP_AUTO = 0x0000
};
enum op_unicode_bidi {
UNICODE_BIDI_NORMAL = 0x0000,
UNICODE_BIDI_EMBED = 0x0001,
- UNICODE_BIDI_BIDI_OVERRIDE = 0x0002,
+ UNICODE_BIDI_BIDI_OVERRIDE = 0x0002
};
enum op_vertical_align {
@@ -568,13 +568,13 @@ enum op_vertical_align {
VERTICAL_ALIGN_TEXT_TOP = 0x0004,
VERTICAL_ALIGN_MIDDLE = 0x0005,
VERTICAL_ALIGN_BOTTOM = 0x0006,
- VERTICAL_ALIGN_TEXT_BOTTOM = 0x0007,
+ VERTICAL_ALIGN_TEXT_BOTTOM = 0x0007
};
enum op_visibility {
VISIBILITY_VISIBLE = 0x0000,
VISIBILITY_HIDDEN = 0x0001,
- VISIBILITY_COLLAPSE = 0x0002,
+ VISIBILITY_COLLAPSE = 0x0002
};
enum op_voice_family {
@@ -585,7 +585,7 @@ enum op_voice_family {
VOICE_FAMILY_MALE = 0x0001,
VOICE_FAMILY_FEMALE = 0x0002,
- VOICE_FAMILY_CHILD = 0x0003,
+ VOICE_FAMILY_CHILD = 0x0003
};
enum op_volume {
@@ -597,7 +597,7 @@ enum op_volume {
VOLUME_SOFT = 0x0002,
VOLUME_MEDIUM = 0x0003,
VOLUME_LOUD = 0x0004,
- VOLUME_X_LOUD = 0x0005,
+ VOLUME_X_LOUD = 0x0005
};
enum op_white_space {
@@ -605,29 +605,29 @@ enum op_white_space {
WHITE_SPACE_PRE = 0x0001,
WHITE_SPACE_NOWRAP = 0x0002,
WHITE_SPACE_PRE_WRAP = 0x0003,
- WHITE_SPACE_PRE_LINE = 0x0004,
+ WHITE_SPACE_PRE_LINE = 0x0004
};
enum op_widows {
- WIDOWS_SET = 0x0080,
+ WIDOWS_SET = 0x0080
};
enum op_width {
WIDTH_SET = 0x0080,
- WIDTH_AUTO = 0x0000,
+ WIDTH_AUTO = 0x0000
};
enum op_word_spacing {
WORD_SPACING_SET = 0x0080,
- WORD_SPACING_NORMAL = 0x0000,
+ WORD_SPACING_NORMAL = 0x0000
};
enum op_z_index {
Z_INDEX_SET = 0x0080,
- Z_INDEX_AUTO = 0x0000,
+ Z_INDEX_AUTO = 0x0000
};
#endif
diff --git a/src/lex/lex.h b/src/lex/lex.h
index 6d0249e..d0fc787 100644
--- a/src/lex/lex.h
+++ b/src/lex/lex.h
@@ -22,7 +22,7 @@ typedef struct css_lexer css_lexer;
* Lexer option types
*/
typedef enum css_lexer_opttype {
- CSS_LEXER_EMIT_COMMENTS,
+ CSS_LEXER_EMIT_COMMENTS
} css_lexer_opttype;
/**
diff --git a/src/parse/language.c b/src/parse/language.c
index cff66df..691dff3 100644
--- a/src/parse/language.c
+++ b/src/parse/language.c
@@ -36,7 +36,7 @@ struct css_language {
enum {
BEFORE_CHARSET,
BEFORE_RULES,
- HAD_RULE,
+ HAD_RULE
} state; /**< State flag, for at-rule handling */
/** \todo These should be statically allocated */
@@ -129,6 +129,7 @@ css_error css_language_create(css_stylesheet *sheet, css_parser *parser,
parserutils_error perror;
lwc_error lerror;
css_error error;
+ int i;
if (sheet == NULL || parser == NULL || alloc == NULL ||
language == NULL)
@@ -147,7 +148,7 @@ css_error css_language_create(css_stylesheet *sheet, css_parser *parser,
}
/* Intern all known strings */
- for (int i = 0; i < LAST_KNOWN; i++) {
+ for (i = 0; i < LAST_KNOWN; i++) {
lerror = lwc_context_intern(sheet->dictionary,
stringmap[i].data,
stringmap[i].len,
@@ -354,14 +355,14 @@ css_error handleStartAtRule(css_language *c, const parserutils_vector *vector)
{
parserutils_error perror;
context_entry entry = { CSS_PARSER_START_ATRULE, NULL };
-
- assert(c != NULL);
-
- /* vector contains: ATKEYWORD ws any0 */
const css_token *token = NULL;
const css_token *atkeyword = NULL;
int32_t ctx = 0;
+ /* vector contains: ATKEYWORD ws any0 */
+
+ assert(c != NULL);
+
atkeyword = parserutils_vector_iterate(vector, &ctx);
consumeWhitespace(vector, &ctx);
diff --git a/src/parse/parse.c b/src/parse/parse.c
index f195c50..cc24385 100644
--- a/src/parse/parse.c
+++ b/src/parse/parse.c
@@ -583,10 +583,11 @@ css_error getToken(css_parser *parser, const css_token **token)
if (t->type < CSS_TOKEN_LAST_INTERN && t->data.data != NULL) {
if (t->type < CSS_TOKEN_LAST_INTERN_LOWER) {
- uint8_t temp[t->data.len];
+ uint8_t *temp = alloca(t->data.len);
bool lower = false;
+ size_t i;
- for (size_t i = 0; i < t->data.len; i++) {
+ for (i = 0; i < t->data.len; i++) {
uint8_t c = t->data.data[i];
if ('A' <= c && c <= 'Z') {
@@ -828,6 +829,7 @@ css_error parseRuleset(css_parser *parser)
{
enum { Initial = 0, Brace = 1, WS = 2 };
parser_state *state = parserutils_stack_get_current(parser->states);
+ parser_state to = { sRulesetEnd, Initial };
const css_token *token;
css_error error;
@@ -916,8 +918,6 @@ css_error parseRuleset(css_parser *parser)
break;
}
- parser_state to = { sRulesetEnd, Initial };
-
return transitionNoRet(parser, to);
}
@@ -1003,6 +1003,7 @@ css_error parseAtRule(css_parser *parser)
{
enum { Initial = 0, WS = 1, Any = 2, AfterAny = 3 };
parser_state *state = parserutils_stack_get_current(parser->states);
+ parser_state to = { sAtRuleEnd, Initial };
const css_token *token;
css_error error;
@@ -1065,8 +1066,6 @@ css_error parseAtRule(css_parser *parser)
break;
}
- parser_state to = { sAtRuleEnd, Initial };
-
return transitionNoRet(parser, to);
}
@@ -1450,6 +1449,7 @@ css_error parseDeclList(css_parser *parser)
{
enum { Initial = 0, WS = 1 };
parser_state *state = parserutils_stack_get_current(parser->states);
+ parser_state to = { sDeclListEnd, Initial };
const css_token *token;
css_error error;
@@ -1493,8 +1493,6 @@ css_error parseDeclList(css_parser *parser)
break;
}
- parser_state to = { sDeclListEnd, Initial };
-
return transitionNoRet(parser, to);
}
@@ -1502,6 +1500,7 @@ css_error parseDeclListEnd(css_parser *parser)
{
enum { Initial = 0, AfterDeclaration = 1 };
parser_state *state = parserutils_stack_get_current(parser->states);
+ parser_state to = { sDeclList, Initial };
const css_token *token;
css_error error;
@@ -1540,8 +1539,6 @@ css_error parseDeclListEnd(css_parser *parser)
break;
}
- parser_state to = { sDeclList, Initial };
-
return transitionNoRet(parser, to);
}
@@ -1584,6 +1581,7 @@ css_error parseValue1(css_parser *parser)
{
enum { Initial = 0, AfterValue = 1 };
parser_state *state = parserutils_stack_get_current(parser->states);
+ parser_state to = { sValue0, Initial };
const css_token *token;
css_error error;
@@ -1622,8 +1620,6 @@ css_error parseValue1(css_parser *parser)
break;
}
- parser_state to = { sValue0, Initial };
-
return transitionNoRet(parser, to);
}
@@ -1980,6 +1976,8 @@ css_error parseMalformedDeclaration(css_parser *parser)
}
case Go:
while (1) {
+ char want;
+ char *match;
const char *data;
size_t len;
@@ -2002,8 +2000,7 @@ css_error parseMalformedDeclaration(css_parser *parser)
data[0] != ';'))
continue;
- char want;
- char *match = parserutils_stack_get_current(
+ match = parserutils_stack_get_current(
parser->open_items);
/* If the stack is empty, then we're done if we've got
@@ -2078,6 +2075,8 @@ css_error parseMalformedSelector(css_parser *parser)
/* Fall through */
case Go:
while (1) {
+ char want;
+ char *match;
const char *data;
size_t len;
@@ -2099,8 +2098,7 @@ css_error parseMalformedSelector(css_parser *parser)
data[0] != '(' && data[0] != ')'))
continue;
- char want;
- char *match = parserutils_stack_get_current(
+ match = parserutils_stack_get_current(
parser->open_items);
/* Get corresponding start tokens for end tokens */
@@ -2176,6 +2174,8 @@ css_error parseMalformedAtRule(css_parser *parser)
}
case Go:
while (1) {
+ char want;
+ char *match;
const char *data;
size_t len;
@@ -2198,8 +2198,7 @@ css_error parseMalformedAtRule(css_parser *parser)
data[0] != ';'))
continue;
- char want;
- char *match = parserutils_stack_get_current(
+ match = parserutils_stack_get_current(
parser->open_items);
/* If we have a semicolon, then we're either done or
diff --git a/src/parse/parse.h b/src/parse/parse.h
index 3a460e6..c590858 100644
--- a/src/parse/parse.h
+++ b/src/parse/parse.h
@@ -31,7 +31,7 @@ typedef enum css_parser_event {
CSS_PARSER_START_BLOCK,
CSS_PARSER_END_BLOCK,
CSS_PARSER_BLOCK_CONTENT,
- CSS_PARSER_DECLARATION,
+ CSS_PARSER_DECLARATION
} css_parser_event;
typedef css_error (*css_parser_event_handler)(css_parser_event type,
@@ -42,7 +42,7 @@ typedef css_error (*css_parser_event_handler)(css_parser_event type,
*/
typedef enum css_parser_opttype {
CSS_PARSER_QUIRKS,
- CSS_PARSER_EVENT_HANDLER,
+ CSS_PARSER_EVENT_HANDLER
} css_parser_opttype;
/**
diff --git a/src/parse/properties.c b/src/parse/properties.c
index d08d23a..6294a6e 100644
--- a/src/parse/properties.c
+++ b/src/parse/properties.c
@@ -1390,9 +1390,10 @@ css_error parse_clip(css_language *c,
value = CLIP_AUTO;
} else if (token->type == CSS_TOKEN_FUNCTION &&
token->ilower == c->strings[RECT]) {
+ int i;
value = CLIP_SHAPE_RECT;
- for (int i = 0; i < 4; i++) {
+ for (i = 0; i < 4; i++) {
consumeWhitespace(vector, ctx);
token = parserutils_vector_peek(vector, *ctx);
@@ -1470,9 +1471,10 @@ css_error parse_clip(css_language *c,
memcpy((*result)->bytecode, &opv, sizeof(opv));
if ((flags & FLAG_INHERIT) == false &&
(value & CLIP_SHAPE_MASK) == CLIP_SHAPE_RECT) {
+ int i;
uint8_t *ptr = ((uint8_t *) (*result)->bytecode) + sizeof(opv);
- for (int i = 0; i < num_lengths; i++) {
+ for (i = 0; i < num_lengths; i++) {
memcpy(ptr, &length[i], sizeof(length[i]));
ptr += sizeof(length[i]);
memcpy(ptr, &unit[i], sizeof(unit[i]));
@@ -2827,7 +2829,8 @@ css_error parse_font_family(css_language *c,
uint16_t len = lwc_string_length(token->idata);
const css_token *temp_token = token;
lwc_error lerror;
-
+ uint8_t *buf;
+ uint8_t *p;
temp_ctx = *ctx;
@@ -2856,8 +2859,8 @@ css_error parse_font_family(css_language *c,
vector, &temp_ctx);
}
- uint8_t buf[len];
- uint8_t *p = buf;
+ buf = alloca(len);
+ p = buf;
memcpy(p, lwc_string_data(token->idata), lwc_string_length(token->idata));
p += lwc_string_length(token->idata);
@@ -6009,6 +6012,8 @@ css_error parse_voice_family(css_language *c,
uint16_t len = lwc_string_length(token->idata);
const css_token *temp_token = token;
lwc_error lerror;
+ uint8_t *buf;
+ uint8_t *p;
temp_ctx = *ctx;
@@ -6036,8 +6041,8 @@ css_error parse_voice_family(css_language *c,
vector, &temp_ctx);
}
- uint8_t buf[len];
- uint8_t *p = buf;
+ buf = alloca(len);
+ p = buf;
memcpy(p, lwc_string_data(token->idata), lwc_string_length(token->idata));
p += lwc_string_length(token->idata);
@@ -6657,9 +6662,10 @@ css_error parse_colour_specifier(css_language *c,
return error;
} else if (token->type == CSS_TOKEN_FUNCTION) {
if (token->ilower == c->strings[RGB]) {
+ int i;
css_token_type valid = CSS_TOKEN_NUMBER;
- for (int i = 0; i < 3; i++) {
+ for (i = 0; i < 3; i++) {
css_fixed num;
size_t consumed = 0;
uint8_t *component = i == 0 ? &r