| OLD | NEW |
| 1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef V8_EXPRESSION_CLASSIFIER_H | 5 #ifndef V8_EXPRESSION_CLASSIFIER_H |
| 6 #define V8_EXPRESSION_CLASSIFIER_H | 6 #define V8_EXPRESSION_CLASSIFIER_H |
| 7 | 7 |
| 8 #include "src/v8.h" | 8 #include "src/v8.h" |
| 9 | 9 |
| 10 #include "src/messages.h" | 10 #include "src/messages.h" |
| (...skipping 139 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 150 invalid_productions_ |= ArrowFormalParametersProduction; | 150 invalid_productions_ |= ArrowFormalParametersProduction; |
| 151 arrow_formal_parameters_error_.location = loc; | 151 arrow_formal_parameters_error_.location = loc; |
| 152 arrow_formal_parameters_error_.message = message; | 152 arrow_formal_parameters_error_.message = message; |
| 153 arrow_formal_parameters_error_.arg = arg; | 153 arrow_formal_parameters_error_.arg = arg; |
| 154 } | 154 } |
| 155 | 155 |
| 156 void RecordDuplicateFormalParameterError(const Scanner::Location& loc) { | 156 void RecordDuplicateFormalParameterError(const Scanner::Location& loc) { |
| 157 if (!is_valid_formal_parameter_list_without_duplicates()) return; | 157 if (!is_valid_formal_parameter_list_without_duplicates()) return; |
| 158 invalid_productions_ |= DistinctFormalParametersProduction; | 158 invalid_productions_ |= DistinctFormalParametersProduction; |
| 159 duplicate_formal_parameter_error_.location = loc; | 159 duplicate_formal_parameter_error_.location = loc; |
| 160 duplicate_formal_parameter_error_.message = | 160 duplicate_formal_parameter_error_.message = MessageTemplate::kParamDupe; |
| 161 MessageTemplate::kStrictParamDupe; | |
| 162 duplicate_formal_parameter_error_.arg = nullptr; | 161 duplicate_formal_parameter_error_.arg = nullptr; |
| 163 } | 162 } |
| 164 | 163 |
| 165 // Record a binding that would be invalid in strict mode. Confusingly this | 164 // Record a binding that would be invalid in strict mode. Confusingly this |
| 166 // is not the same as StrictFormalParameterList, which simply forbids | 165 // is not the same as StrictFormalParameterList, which simply forbids |
| 167 // duplicate bindings. | 166 // duplicate bindings. |
| 168 void RecordStrictModeFormalParameterError(const Scanner::Location& loc, | 167 void RecordStrictModeFormalParameterError(const Scanner::Location& loc, |
| 169 MessageTemplate::Template message, | 168 MessageTemplate::Template message, |
| 170 const char* arg = nullptr) { | 169 const char* arg = nullptr) { |
| 171 if (!is_valid_strict_mode_formal_parameters()) return; | 170 if (!is_valid_strict_mode_formal_parameters()) return; |
| (...skipping 74 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 246 Error arrow_formal_parameters_error_; | 245 Error arrow_formal_parameters_error_; |
| 247 Error duplicate_formal_parameter_error_; | 246 Error duplicate_formal_parameter_error_; |
| 248 Error strict_mode_formal_parameter_error_; | 247 Error strict_mode_formal_parameter_error_; |
| 249 Error strong_mode_formal_parameter_error_; | 248 Error strong_mode_formal_parameter_error_; |
| 250 DuplicateFinder* duplicate_finder_; | 249 DuplicateFinder* duplicate_finder_; |
| 251 }; | 250 }; |
| 252 } | 251 } |
| 253 } // v8::internal | 252 } // v8::internal |
| 254 | 253 |
| 255 #endif // V8_EXPRESSION_CLASSIFIER_H | 254 #endif // V8_EXPRESSION_CLASSIFIER_H |
| OLD | NEW |