Skip to content

Commit 61b350f

Browse files
committed
Removed legacy_typecheckt interface, use new message counters
1 parent 2644b64 commit 61b350f

File tree

5 files changed

+22
-21
lines changed

5 files changed

+22
-21
lines changed

src/util/cout_message.cpp

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,11 +68,11 @@ void console_message_handlert::print(
6868
unsigned level,
6969
const std::string &message)
7070
{
71+
message_handlert::print(level, message);
72+
7173
if(verbosity<level)
7274
return;
7375

74-
message_handlert::print(level, message);
75-
7676
#ifdef _WIN32
7777
HANDLE out_handle=
7878
GetStdHandle((level>1)?STD_OUTPUT_HANDLE:STD_ERROR_HANDLE);
@@ -217,6 +217,8 @@ void gcc_message_handlert::print(
217217
unsigned level,
218218
const std::string &message)
219219
{
220+
message_handlert::print(level, message);
221+
220222
// gcc appears to send everything to cerr
221223
if(verbosity>=level)
222224
std::cerr << message << '\n' << std::flush;

src/util/message.h

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -82,11 +82,10 @@ class stream_message_handlert:public message_handlert
8282

8383
virtual void print(unsigned level, const std::string &message)
8484
{
85+
message_handlert::print(level, message);
86+
8587
if(verbosity>=level)
86-
{
87-
message_handlert::print(level, message);
8888
out << message << '\n';
89-
}
9089
}
9190

9291
virtual void flush(unsigned level)

src/util/typecheck.cpp

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,14 +22,19 @@ Author: Daniel Kroening, kroening@kroening.com
2222

2323
bool typecheckt::typecheck_main()
2424
{
25+
assert(message_handler);
26+
27+
const unsigned errors_before=
28+
message_handler->get_message_count(messaget::M_ERROR);
29+
2530
try
2631
{
2732
typecheck();
2833
}
2934

3035
catch(int)
3136
{
32-
error_found=true;
37+
error();
3338
}
3439

3540
catch(const char *e)
@@ -42,5 +47,5 @@ bool typecheckt::typecheck_main()
4247
error() << e << eom;
4348
}
4449

45-
return error_found;
50+
return message_handler->get_message_count(messaget::M_ERROR)!=errors_before;
4651
}

src/util/typecheck.h

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -16,30 +16,27 @@ class typecheckt:public messaget
1616
{
1717
public:
1818
explicit typecheckt(message_handlert &_message_handler):
19-
messaget(_message_handler),
20-
error_found(false)
19+
messaget(_message_handler)
2120
{
2221
}
2322

2423
virtual ~typecheckt() { }
2524

26-
mstreamt &error()
25+
// not pretty, but makes transition easier
26+
void err_location(const source_locationt &loc)
2727
{
28-
error_found=true;
29-
return messaget::error();
28+
messaget::error().source_location=loc;
3029
}
3130

3231
// not pretty, but makes transition easier
3332
void err_location(const exprt &src)
3433
{
35-
error().source_location=src.find_source_location();
34+
err_location(src.find_source_location());
3635
}
3736

38-
bool error_found;
39-
40-
bool get_error_found() const
37+
void err_location(const typet &src)
4138
{
42-
return error_found;
39+
err_location(src.source_location());
4340
}
4441

4542
protected:

src/util/ui_message.cpp

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -156,8 +156,6 @@ void ui_message_handlert::print(
156156
{
157157
case PLAIN:
158158
{
159-
message_handlert::print(level, message);
160-
161159
console_message_handlert console_message_handler;
162160
console_message_handler.print(level, message);
163161
}
@@ -193,6 +191,8 @@ void ui_message_handlert::print(
193191
int sequence_number,
194192
const source_locationt &location)
195193
{
194+
message_handlert::print(level, message);
195+
196196
if(verbosity>=level)
197197
{
198198
switch(get_ui())
@@ -205,8 +205,6 @@ void ui_message_handlert::print(
205205
case XML_UI:
206206
case JSON_UI:
207207
{
208-
message_handlert::print(level, message);
209-
210208
std::string tmp_message(message);
211209

212210
if(!tmp_message.empty() && *tmp_message.rbegin()=='\n')

0 commit comments

Comments
 (0)