Class: AdLint::Exam::CBuiltin::W0788
- Inherits:
-
PassiveCodeCheck
- Object
- AdLint::Examination
- CodeCheck
- PassiveCodeCheck
- AdLint::Exam::CBuiltin::W0788
- Defined in:
- lib/adlint/exam/c_builtin/cc1_check.rb
Instance Method Summary collapse
-
#initialize(phase_ctxt) ⇒ W0788
constructor
A new instance of W0788.
Methods inherited from CodeCheck
message_id, message_name, #message_name, must_be_deferred?, must_be_unique?, required?
Methods inherited from AdLint::Examination
catalog, #execute, registrant_phase_class, required?
Methods included from LogUtil
#log_debug, #log_error, #log_fatal, #log_info, #log_warn
Methods included from ReportUtil
#create_context_message, #write_FL_FUNC, #write_FL_STMT, #write_FN_CALL, #write_FN_CSUB, #write_FN_CYCM, #write_FN_GOTO, #write_FN_LINE, #write_FN_NEST, #write_FN_PARA, #write_FN_PATH, #write_FN_RETN, #write_FN_STMT, #write_FN_UELS, #write_FN_UNRC, #write_FN_UNUV, #write_assignment, #write_error_message, #write_funcall, #write_fundcl, #write_fundef, #write_gvardcl, #write_include, #write_initialization, #write_labeldef, #write_literal, #write_macrodef, #write_pp_directive, #write_typedcl, #write_vardef, #write_warning_message, #write_xref_function, #write_xref_variable
Constructor Details
#initialize(phase_ctxt) ⇒ W0788
Returns a new instance of W0788.
19441 19442 19443 19444 19445 19446 19447 19448 19449 19450 19451 19452 19453 19454 19455 19456 |
# File 'lib/adlint/exam/c_builtin/cc1_check.rb', line 19441 def initialize(phase_ctxt) super interp = phase_ctxt[:cc1_interpreter] interp.on_variable_declared += T(:check_object_dcl) interp.on_variable_defined += T(:check_object_dcl) interp.on_explicit_function_declared += T(:check_object_dcl) interp.on_explicit_function_defined += T(:check_object_dcl) interp.on_typedef_declared += T(:check_typedef_dcl) interp.on_enum_declared += T(:check_enum_dcl) interp.on_block_started += T(:enter_scope) interp.on_block_ended += T(:leave_scope) @obj_dcls = [Hash.new { |hash, key| hash[key] = [] }] @typedef_dcls = [Hash.new { |hash, key| hash[key] = [] }] @enum_names = [Hash.new { |hash, key| hash[key] = [] }] end |