Skip to content

Commit 626ec18

Browse files
tautschnigDaniel Kroening
authored and
Daniel Kroening
committed
Visual Studio: silence warning about macro re-definition and conversion in lexer
Flex generates definitions before system headers are included, and tokens result in signed/unsigned comparison.
1 parent 9439180 commit 626ec18

File tree

5 files changed

+40
-0
lines changed

5 files changed

+40
-0
lines changed

src/ansi-c/scanner.l

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,14 @@
44

55
%{
66

7+
#if defined _MSC_VER
8+
// signed/unsigned mismatch
9+
#pragma warning(disable:4365)
10+
// macro re-definition: flex conditonally defines INT32_MAX et al. and thus
11+
// they are set before library headers get to define them
12+
#pragma warning(disable:4005)
13+
#endif
14+
715
/*
816
* This scanner is based on:
917
*

src/assembler/scanner.l

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,14 @@
55

66
%{
77

8+
#if defined _MSC_VER
9+
// signed/unsigned mismatch
10+
#pragma warning(disable:4365)
11+
// macro re-definition: flex conditonally defines INT32_MAX et al. and thus
12+
// they are set before library headers get to define them
13+
#pragma warning(disable:4005)
14+
#endif
15+
816
#define PARSER assembler_parser
917
#define YYSTYPE unsigned
1018
#undef ECHO

src/jsil/scanner.l

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,14 @@
66

77
%{
88

9+
#if defined _MSC_VER
10+
// signed/unsigned mismatch
11+
#pragma warning(disable:4365)
12+
// macro re-definition: flex conditonally defines INT32_MAX et al. and thus
13+
// they are set before library headers get to define them
14+
#pragma warning(disable:4005)
15+
#endif
16+
917
#include <util/expr.h>
1018

1119
#include <ansi-c/literals/convert_float_literal.h>

src/json/scanner.l

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,14 @@
1212

1313
%{
1414

15+
#if defined _MSC_VER
16+
// signed/unsigned mismatch
17+
#pragma warning(disable:4365)
18+
// macro re-definition: flex conditonally defines INT32_MAX et al. and thus
19+
// they are set before library headers get to define them
20+
#pragma warning(disable:4005)
21+
#endif
22+
1523
#define PARSER json_parser
1624

1725
#include "json_parser.h"

src/xmllang/scanner.l

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,14 @@
66

77
%{
88

9+
#if defined _MSC_VER
10+
// signed/unsigned mismatch
11+
#pragma warning(disable:4365)
12+
// macro re-definition: flex conditonally defines INT32_MAX et al. and thus
13+
// they are set before library headers get to define them
14+
#pragma warning(disable:4005)
15+
#endif
16+
917
#include <cctype>
1018
#include <cstring>
1119
#include <cstdlib>

0 commit comments

Comments
 (0)