Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(571)

Side by Side Diff: runtime/vm/report.cc

Issue 2974233002: VM: Re-format to use at most one newline between functions (Closed)
Patch Set: Rebase and merge Created 3 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « runtime/vm/regexp_parser.cc ('k') | runtime/vm/resolver.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #include "vm/report.h" 5 #include "vm/report.h"
6 6
7 #include "vm/code_patcher.h" 7 #include "vm/code_patcher.h"
8 #include "vm/exceptions.h" 8 #include "vm/exceptions.h"
9 #include "vm/flags.h" 9 #include "vm/flags.h"
10 #include "vm/longjump.h" 10 #include "vm/longjump.h"
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 strs.SetAt(2, Symbols::NewLine()); 78 strs.SetAt(2, Symbols::NewLine());
79 strs.SetAt(3, script_line); 79 strs.SetAt(3, script_line);
80 strs.SetAt(4, Symbols::NewLine()); 80 strs.SetAt(4, Symbols::NewLine());
81 // Append the column marker. 81 // Append the column marker.
82 const String& column_line = String::Handle(String::NewFormatted( 82 const String& column_line = String::Handle(String::NewFormatted(
83 Heap::kOld, "%*s\n", static_cast<int>(column), "^")); 83 Heap::kOld, "%*s\n", static_cast<int>(column), "^"));
84 strs.SetAt(5, column_line); 84 strs.SetAt(5, column_line);
85 result = String::ConcatAll(strs, Heap::kOld); 85 result = String::ConcatAll(strs, Heap::kOld);
86 } else { 86 } else {
87 // Token position is unknown. 87 // Token position is unknown.
88 result = String::NewFormatted(Heap::kOld, "'%s': %s: ", 88 result = String::NewFormatted(
89 script_url.ToCString(), message_header); 89 Heap::kOld, "'%s': %s: ", script_url.ToCString(), message_header);
90 result = String::Concat(result, message, Heap::kOld); 90 result = String::Concat(result, message, Heap::kOld);
91 } 91 }
92 } else { 92 } else {
93 // Script is unknown. 93 // Script is unknown.
94 // Append the formatted error or warning message. 94 // Append the formatted error or warning message.
95 result = String::NewFormatted(Heap::kOld, "%s: ", message_header); 95 result = String::NewFormatted(Heap::kOld, "%s: ", message_header);
96 result = String::Concat(result, message, Heap::kOld); 96 result = String::Concat(result, message, Heap::kOld);
97 } 97 }
98 return result.raw(); 98 return result.raw();
99 } 99 }
100 100
101
102 void Report::LongJump(const Error& error) { 101 void Report::LongJump(const Error& error) {
103 Thread::Current()->long_jump_base()->Jump(1, error); 102 Thread::Current()->long_jump_base()->Jump(1, error);
104 UNREACHABLE(); 103 UNREACHABLE();
105 } 104 }
106 105
107
108 void Report::LongJumpF(const Error& prev_error, 106 void Report::LongJumpF(const Error& prev_error,
109 const Script& script, 107 const Script& script,
110 TokenPosition token_pos, 108 TokenPosition token_pos,
111 const char* format, 109 const char* format,
112 ...) { 110 ...) {
113 va_list args; 111 va_list args;
114 va_start(args, format); 112 va_start(args, format);
115 LongJumpV(prev_error, script, token_pos, format, args); 113 LongJumpV(prev_error, script, token_pos, format, args);
116 va_end(args); 114 va_end(args);
117 UNREACHABLE(); 115 UNREACHABLE();
118 } 116 }
119 117
120
121 void Report::LongJumpV(const Error& prev_error, 118 void Report::LongJumpV(const Error& prev_error,
122 const Script& script, 119 const Script& script,
123 TokenPosition token_pos, 120 TokenPosition token_pos,
124 const char* format, 121 const char* format,
125 va_list args) { 122 va_list args) {
126 const Error& error = Error::Handle(LanguageError::NewFormattedV( 123 const Error& error = Error::Handle(LanguageError::NewFormattedV(
127 prev_error, script, token_pos, Report::AtLocation, kError, Heap::kOld, 124 prev_error, script, token_pos, Report::AtLocation, kError, Heap::kOld,
128 format, args)); 125 format, args));
129 LongJump(error); 126 LongJump(error);
130 UNREACHABLE(); 127 UNREACHABLE();
131 } 128 }
132 129
133
134 void Report::MessageF(Kind kind, 130 void Report::MessageF(Kind kind,
135 const Script& script, 131 const Script& script,
136 TokenPosition token_pos, 132 TokenPosition token_pos,
137 bool report_after_token, 133 bool report_after_token,
138 const char* format, 134 const char* format,
139 ...) { 135 ...) {
140 va_list args; 136 va_list args;
141 va_start(args, format); 137 va_start(args, format);
142 MessageV(kind, script, token_pos, report_after_token, format, args); 138 MessageV(kind, script, token_pos, report_after_token, format, args);
143 va_end(args); 139 va_end(args);
144 } 140 }
145 141
146
147 void Report::MessageV(Kind kind, 142 void Report::MessageV(Kind kind,
148 const Script& script, 143 const Script& script,
149 TokenPosition token_pos, 144 TokenPosition token_pos,
150 bool report_after_token, 145 bool report_after_token,
151 const char* format, 146 const char* format,
152 va_list args) { 147 va_list args) {
153 if (kind < kError) { 148 if (kind < kError) {
154 // Reporting a warning. 149 // Reporting a warning.
155 if (FLAG_silent_warnings) { 150 if (FLAG_silent_warnings) {
156 return; 151 return;
157 } 152 }
158 if (!FLAG_warning_as_error) { 153 if (!FLAG_warning_as_error) {
159 const String& msg = String::Handle(String::NewFormattedV(format, args)); 154 const String& msg = String::Handle(String::NewFormattedV(format, args));
160 const String& snippet_msg = String::Handle( 155 const String& snippet_msg = String::Handle(
161 PrependSnippet(kind, script, token_pos, report_after_token, msg)); 156 PrependSnippet(kind, script, token_pos, report_after_token, msg));
162 OS::Print("%s", snippet_msg.ToCString()); 157 OS::Print("%s", snippet_msg.ToCString());
163 return; 158 return;
164 } 159 }
165 } 160 }
166 // Reporting an error (or a warning as error). 161 // Reporting an error (or a warning as error).
167 const Error& error = Error::Handle(LanguageError::NewFormattedV( 162 const Error& error = Error::Handle(LanguageError::NewFormattedV(
168 Error::Handle(), // No previous error. 163 Error::Handle(), // No previous error.
169 script, token_pos, report_after_token, kind, Heap::kOld, format, args)); 164 script, token_pos, report_after_token, kind, Heap::kOld, format, args));
170 LongJump(error); 165 LongJump(error);
171 UNREACHABLE(); 166 UNREACHABLE();
172 } 167 }
173 168
174 } // namespace dart 169 } // namespace dart
OLDNEW
« no previous file with comments | « runtime/vm/regexp_parser.cc ('k') | runtime/vm/resolver.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698