CN102799520A - Static checking method and device for source code pairing - Google Patents

Static checking method and device for source code pairing Download PDF

Info

Publication number
CN102799520A
CN102799520A CN2012102179159A CN201210217915A CN102799520A CN 102799520 A CN102799520 A CN 102799520A CN 2012102179159 A CN2012102179159 A CN 2012102179159A CN 201210217915 A CN201210217915 A CN 201210217915A CN 102799520 A CN102799520 A CN 102799520A
Authority
CN
China
Prior art keywords
pairing
source code
matched
needs
static check
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN2012102179159A
Other languages
Chinese (zh)
Other versions
CN102799520B (en
Inventor
胡事民
刘虎球
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tsinghua University
Original Assignee
Tsinghua University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tsinghua University filed Critical Tsinghua University
Priority to CN201210217915.9A priority Critical patent/CN102799520B/en
Publication of CN102799520A publication Critical patent/CN102799520A/en
Application granted granted Critical
Publication of CN102799520B publication Critical patent/CN102799520B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

The invention provides a static checking method and a static checking device for source code pairing. The method comprises the following steps of: performing lexical analysis on source codes, filtering annotation in the source codes, and splitting the source codes into a plurality of mark flows; performing syntactic analysis on the mark flows to construct a syntactic tree; performing semantic analysis on the syntactic tree, searching elements required to be paired, and marking an action region of the elements required to be paired; judging whether the elements required to be paired are paired in the action region or not; if the non-paired elements required to be paired are discovered, judging whether correction is allowed or not; if the correction is allowed, adding pairs at the end of the action region; and if the correction is not allowed, giving an alarm and a prompt. By the method, the pairing detecting efficiency can be effectively improved, stability of a system is improved, certain boundary errors are effectively avoided, user programs can be automatically corrected according to setting of a user, and the workload of a programmer is greatly reduced.

Description

The static check method and the device that are used for the source code pairing
Technical field
The present invention relates to field of computer technology, be specifically related to a kind of static check method and device that is used for the source code pairing.
Background technology
In software development process, source code pairing is one of important debugging and test job.Source code pairing mistake is difficult to directly found by compiler, but can bring the adverse consequences with disguised and time delay.For example, internal memory only applies for that not release can cause internal memory to be revealed, and lock and semaphore do not match and all can cause deadlock, busy waiting.These pairing mistakes are all brought additional difficulty to program debug work.
Generally, the source code pairing work relies on the developer that source code is carried out static hand inspection, depends on artificially to the code inspection of lining by line scan, and efficient is lower and accuracy rate is lower.
Summary of the invention
The present invention one of is intended to solve the problems of the technologies described above at least to a certain extent or provides a kind of useful commerce to select at least.For this reason, one object of the present invention is to propose the static detection method of the source code pairing that a kind of expense is less, efficient is higher, accuracy rate is higher.Another object of the present invention is to propose the static detection device of the source code pairing that a kind of expense is less, efficient is higher, accuracy rate is higher.
A kind of static check method that is used for the source code pairing according to the embodiment of the invention; It is characterized in that; May further comprise the steps: S1, said source code is carried out lexical analysis,, and said source code split into several marks stream the note filtering in the said source code; S2, said mark is flow to the lang method analyze with the structure syntax tree; S3, said syntax tree is carried out semantic analysis, searching needs the pairing element, and the said action scope that needs the pairing element of mark; S4, judge whether the said pairing element that needs matches in said action scope; S5, if find the said pairing element that needs do not matched, then further judge whether to allow to revise; S6, add pairing if allow to revise then in said action scope end; And S7, then do not give a warning and point out if do not allow to revise.
In one embodiment of the invention, also comprise: S8, if the said pairing element that needs all matches, then directly finish to check.
In one embodiment of the invention, the said pairing element that needs comprises: internal memory element, lock element and semaphore element.
In one embodiment of the invention, when the said need pairing element that is not matched appears in the principal function, in end's interpolation pairing of said principal function.
In one embodiment of the invention, when the said need pairing element that is not matched appears in the subfunction, in end's interpolation pairing of said subfunction.
In one embodiment of the invention, said when needing the pairing element to appear in the branched structure when what do not matched, add pairing in the end of each branch of said branched structure.
In one embodiment of the invention, said when needing the pairing element to appear in the loop structure when what do not matched, add pairing in the end of each repetend of said loop structure.
Static check method according to the pairing of the source code of the embodiment of the invention; Can effectively improve the pairing checking efficiency, improve the stability of system, effectively avoid some boundary errors; Can also according to the user the automatic correction of completion to user program be set, reduce programmer's workload greatly.
A kind of static check device that is used for the source code pairing according to the embodiment of the invention; It is characterized in that, comprise with the lower part: lexical analyzer is used for said source code is carried out lexical analysis; And, said source code is split into several mark stream with the note filtering in the said source code; Syntax analyzer is used for that said mark is flow to the lang method and analyzes with the structure syntax tree; Search and mark module, be used for said syntax tree is carried out semantic analysis, searching needs the pairing element, and the said action scope that needs the pairing element of mark; First judge module is used for judging whether the said pairing element that needs matches in said action scope, if the said pairing element that needs that discovery is not matched then gets into second judge module; Said second judge module is used to judge whether the permission correction, then gets into correcting module if allow to revise, as if not allowing correction then to give a warning and pointing out; And said correcting module, be used for adding pairing in said action scope end.
In one embodiment of the invention, need the pairing element all to match, then directly finish inspection if said first judge module is judged.
In one embodiment of the invention, the said pairing element that needs comprises: internal memory element, lock element and semaphore element.
In one embodiment of the invention, when the said need pairing element that is not matched appears in the principal function, in end's interpolation pairing of said principal function.
In one embodiment of the invention, when the said need pairing element that is not matched appears in the subfunction, in end's interpolation pairing of said subfunction.
In one embodiment of the invention, said when needing the pairing element to appear in the branched structure when what do not matched, add pairing in the end of each branch of said branched structure.
In one embodiment of the invention, said when needing the pairing element to appear in the loop structure when what do not matched, add pairing in the end of each repetend of said loop structure.
Static check device according to the pairing of the source code of the embodiment of the invention; Have higher pairing checking efficiency, the stability of higher system can effectively be avoided some boundary errors; Can also according to the user the automatic correction of completion to user program be set, reduced programmer's workload.
Additional aspect of the present invention and advantage part in the following description provide, and part will become obviously from the following description, or recognize through practice of the present invention.
Description of drawings
Above-mentioned and/or additional aspect of the present invention and advantage obviously with are easily understood becoming the description of embodiment from combining figs, wherein:
Fig. 1 is the process flow diagram of the static check method that is used for the source code pairing of the embodiment of the invention; And
Fig. 2 is the structured flowchart of the static check device that is used for the source code pairing of the embodiment of the invention.
Embodiment
Describe embodiments of the invention below in detail, the example of said embodiment is shown in the drawings, and wherein identical from start to finish or similar label is represented identical or similar elements or the element with identical or similar functions.Be exemplary through the embodiment that is described with reference to the drawings below, be intended to be used to explain the present invention, and can not be interpreted as limitation of the present invention.
In description of the invention; It will be appreciated that; The orientation of indications such as term " " center ", " vertically ", " laterally ", " length ", " width ", " thickness ", " on ", D score, " preceding ", " back ", " left side ", " right side ", " vertically ", " level ", " top ", " end " " interior ", " outward ", " clockwise ", " counterclockwise " or position relation are for based on orientation shown in the drawings or position relation; only be to describe with simplifying for the ease of describing the present invention; rather than the device or the element of indication or hint indication must have specific orientation, with specific azimuth configuration and operation, therefore can not be interpreted as limitation of the present invention.
In addition, term " first ", " second " only are used to describe purpose, and can not be interpreted as indication or hint relative importance or the implicit quantity that indicates indicated technical characterictic.Thus, one or more a plurality of these characteristics can be shown or impliedly comprised to the characteristic that is limited with " first ", " second " clearly.In description of the invention, the implication of " a plurality of " is two or more, only if clear and definite concrete qualification is arranged in addition.
In the present invention, only if clear and definite regulation and qualification are arranged in addition, broad understanding should be done in terms such as term " installation ", " linking to each other ", " connection ", " fixing ", for example, can be to be fixedly connected, and also can be to removably connect, or connect integratedly; Can be mechanical connection, also can be to be electrically connected; Can be directly to link to each other, also can link to each other indirectly through intermediary, can be the connection of two element internals.For those of ordinary skill in the art, can understand above-mentioned term concrete implication in the present invention as the case may be.
In the present invention; Only if clear and definite regulation and qualification are arranged in addition; First characteristic second characteristic it " on " or D score can comprise that first and second characteristics directly contact, can comprise that also first and second characteristics are not directly contacts but through the contact of the additional features between them.And, first characteristic second characteristic " on ", " top " and " above " comprise first characteristic directly over second characteristic and oblique upper, or only represent that the first characteristic level height is higher than second characteristic.First characteristic second characteristic " under ", " below " and " below " comprise first characteristic under second characteristic with tiltedly below, or only represent that the first characteristic level height is less than second characteristic.
For making those skilled in the art understand the present invention better, existing several frequently seen need pairing element to source code makes an explanation.
(1) application of internal memory element and release.In the computer runs programs; Need to apply for that dynamically some memory headrooms are used to store dynamic user data, this partial content should discharge when finishing using; Reveal otherwise long-play then can cause internal memory, harm is especially serious in requiring long playing software.
(2) the lock element locks and release.Computer program is in operation, and usually need visit some critical sections between the thread, i.e. the shared drive district; In order to prevent access conflict; When visit, usually lock, when visit finishes, discharge lock, have only a thread carrying out corresponding operating in the critical section thereby be implemented in.Correspondingly, if the lock of application does not in time discharge, the thread busy waiting and the deadlock of this association to be used such as then cause easily.
(3) application of semaphore element and release.The effect of semaphore and lock are very similar, and difference is that semaphore can not waste the processor time waiting to bide one's time.
More than three kinds of common need pairing elements, have similar part at source code aspect appearing, that all need match appears in the program.Therefore, hereinafter for example in all do not enumerate the embodiment of three kinds of need pairing elements, burdensome to avoid repetition.
Below in conjunction with Fig. 1 and Fig. 2 the static check method and apparatus that source code of the present invention matches is described.
Fig. 1 is the process flow diagram of the static check method that is used for the source code pairing of the embodiment of the invention.As shown in Figure 1, this method may further comprise the steps:
Step S101, source code is carried out lexical analysis, with the note filtering in the source code, and source code split into several marks stream, the stored in form of matching element this moment and being converted into mark is in internal memory.
Step S102, mark is flow to the lang method analyze with the structure syntax tree, the application of pairing element is recorded in the syntax tree of mark composition, through the structure of syntax tree being discerned the concrete action that can find out wherein with releasing operation.
Step S103, syntax tree is carried out semantic analysis, searching needs the pairing element, and the mark action scope that need match element.Particularly, need the pairing element to comprise internal memory element, lock element and quantity of information element.
Whether step S104, judgement need the pairing element in action scope, to match.Specifically comprise,, identify the territory scope of an element to be paired in the action scope,, realize the pairing inspection through checking the operational circumstances of mark to be paired in each syntax tree in this scope in conjunction with the operation of front in several steps.
Step S105, if find the need pairing element do not matched, then further judge whether to allow to revise.
Step S106, add pairing in action scope end if allow to revise then.Particularly, when the need pairing element that is not matched appears in the principal function, in end's interpolation pairing of principal function; When the need pairing element that is not matched appears in the subfunction, in end's interpolation pairing of subfunction; When the need that do not matched pairing element appears in the branched structure, add pairing in the end of each branch of branched structure; When the need that do not matched pairing element appears in the loop structure, add pairing in the end of each repetend of loop structure.More specific embodiments will be done introduction hereinafter.
Step S107, then do not give a warning and point out if do not allow to revise.
In a preferred embodiment of the invention, after step S104, also comprise step S108:, then directly finish inspection if need the pairing element all to match.
Static check method according to the pairing of the source code of the embodiment of the invention; Can effectively improve the pairing checking efficiency, improve the stability of system, effectively avoid some boundary errors; Can also according to the user the automatic correction of completion to user program be set, reduce programmer's workload greatly.
The static check method of source code pairing of the present invention is described below in conjunction with the case of C language.
Embodiment one, when the need pairing element that is not matched appears in the principal function, in end's interpolation pairing of principal function.
When embodiment 1.1 appears in the principal function when the internal memory element that is not matched, in end's interpolation pairing of principal function.
Figure BDA00001818352600051
As above shown in the example, the pointer of integer type " a " applied for that through malloc a slice size is the memory headroom of 50 words, and when operation finishes, have free (a) that this sheet memory headroom is discharged.If lack an operation wherein, then incorrect, can check out unusual and attention program developer through this method.
When embodiment 1.2 appears in the principal function when the lock element that is not matched, in end's interpolation pairing of principal function.
Figure BDA00001818352600052
As above shown in the example, spin_lock lock test_lock locks to data through splin_lock, if other thread is carried out same operation, and then can busy waiting.If lack an operation wherein, then incorrect, can check out unusual and attention program developer through this method.
When embodiment 1.3 appears in the principal function when the quantity of information element that is not matched, in end's interpolation pairing of principal function.
Figure BDA00001818352600061
As above shown in the example, when using, semaphore mutex detects whether to use the semaphore of applying for through signal release when finishing using through calling wait.If lack an operation wherein, then incorrect, can check out unusual and attention program developer through this method.
Embodiment two, when the need pairing element that is not matched appears in the subfunction, in end's interpolation pairing of subfunction.
When embodiment 2.1 appears in the subfunction when the internal memory element that is not matched, in end's interpolation pairing of subfunction.
Figure BDA00001818352600062
When unpaired lock element and quantity of information element appeared in the subfunction, the situation of adding pairing in the end of subfunction was routine therewith similar.
Embodiment three, when the need that do not matched pairing element appears in the branched structure, add pairing in the end of each branch of branched structure.
When embodiment 3.1 appears in the branched structure when the internal memory element that is not matched, add pairing in the end of each branch of branched structure.
Figure BDA00001818352600063
Figure BDA00001818352600071
When unpaired lock element and quantity of information element appeared in the branched structure, the situation of adding pairing in the end of each branch of branched structure was routine therewith similar.
Embodiment four, when the need that do not matched pairing element appears in the loop structure, add pairing in the end of each repetend of loop structure.
When embodiment 4.1 appears in the loop structure when the internal memory element that is not matched, add pairing in the end of each repetend of loop structure.
Figure BDA00001818352600072
When unpaired lock element and quantity of information element appeared in the loop structure, the situation of adding pairing in the end of each repetend of loop structure was routine therewith similar.
Fig. 2 is the structured flowchart of the static check device that is used for the source code pairing of the embodiment of the invention.As shown in Figure 2, this method comprises with the lower part: lexical analyzer 100, syntax analyzer 200, search and mark module 300, first judge module 400, second judge module 500 and correcting module 600.Wherein:
Lexical analyzer 100 is used for source code is carried out lexical analysis, with the note filtering in the source code, and source code is split into several marks stream.At this moment, pairing element and the stored in form that is converted into mark are in internal memory.
Syntax analyzer 200 is used for that mark is flow to the lang method and analyzes with the structure syntax tree.The application and the releasing operation of pairing element are recorded in the syntax tree of mark composition, through the structure of syntax tree being discerned the concrete action that can find out wherein.
Search and mark module 300 is used for syntax tree is carried out semantic analysis, searching needs the pairing element, and the mark action scope that need match element.Particularly, need the pairing element to comprise internal memory element, lock element and quantity of information element.
Whether first judge module 400 is used for judging needs the pairing element to match in action scope, if the need that discovery is not matched pairing element then gets into second judge module 500.If need the pairing element all to match, then directly finish inspection.
Second judge module 500 is used to judge whether the permission correction, then gets into correcting module 600 if allow to revise, as if not allowing correction then to give a warning and pointing out.
Correcting module 600 is used for adding pairing in action scope end.Particularly, when the said need pairing element that is not matched appears in the principal function, in end's interpolation pairing of said principal function.When the said need pairing element that is not matched appears in the subfunction, in end's interpolation pairing of said subfunction.Said when needing the pairing element to appear in the branched structure when what do not matched, add pairing in the end of each branch of said branched structure.Said when needing the pairing element to appear in the loop structure when what do not matched, add pairing in the end of each repetend of said loop structure.Specific embodiment can be with reference to the description in the static check method of matching about source code of the present invention in the preceding text.
Static check device according to the pairing of the source code of the embodiment of the invention; Have higher pairing checking efficiency, the stability of higher system can effectively be avoided some boundary errors; Can also according to the user the automatic correction of completion to user program be set, reduced programmer's workload.
Describe and to be understood that in the process flow diagram or in this any process otherwise described or method; Expression comprises module, fragment or the part of code of the executable instruction of the step that one or more is used to realize specific logical function or process; And the scope of preferred implementation of the present invention comprises other realization; Wherein can be not according to order shown or that discuss; Comprise according to related function and to carry out function by the mode of basic while or by opposite order, this should be understood by the embodiments of the invention person of ordinary skill in the field.
In process flow diagram the expression or in this logic of otherwise describing and/or step; For example; Can be considered to be used to realize the sequencing tabulation of the executable instruction of logic function; May be embodied in any computer-readable medium; Use for instruction execution system, device or equipment (like computer-based system, comprise that system or other of processor can be from the systems of instruction execution system, device or equipment instruction fetch and execution command), or combine these instruction execution systems, device or equipment and use.With regard to this instructions, " computer-readable medium " can be anyly can comprise, storage, communication, propagation or transmission procedure are for instruction execution system, device or equipment or combine these instruction execution systems, device or equipment and the device that uses.The example more specifically of computer-readable medium (non-exhaustive list) comprises following: the electrical connection section (electronic installation) with one or more wirings; Portable computer diskette box (magnetic device); Random-access memory (ram), ROM (read-only memory) (ROM) can be wiped and can edit ROM (read-only memory) (EPROM or flash memory); Fiber device, and portable optic disk ROM (read-only memory) (CDROM).In addition; Computer-readable medium even can be paper or other the suitable media that to print said program above that; Because can be for example through paper or other media are carried out optical scanning; Then edit, decipher or handle to obtain said program with other suitable methods in case of necessity with the electronics mode, then it is stored in the computer memory.
Should be appreciated that each several part of the present invention can use hardware, software, firmware or their combination to realize.In the above-described embodiment, a plurality of steps or method can realize with being stored in the storer and by software or firmware that suitable instruction execution system is carried out.For example; If realize with hardware; The same in another embodiment, each in the available following technology well known in the art or their combination realize: have the discrete logic that is used for data-signal is realized the logic gates of logic function, have the special IC of suitable combinational logic gate circuit; Programmable gate array (PGA), field programmable gate array (FPGA) etc.
Those skilled in the art are appreciated that and realize that all or part of step that the foregoing description method is carried is to instruct relevant hardware to accomplish through program; Described program can be stored in a kind of computer-readable recording medium; This program comprises one of step or its combination of method embodiment when carrying out.
In addition, each functional unit in each embodiment of the present invention can be integrated in the processing module, also can be that the independent physics in each unit exists, and also can be integrated in the module two or more unit.Above-mentioned integrated module both can adopt the form of hardware to realize, also can adopt the form of software function module to realize.If said integrated module realizes with the form of software function module and during as independently production marketing or use, also can be stored in the computer read/write memory medium.The above-mentioned storage medium of mentioning can be a ROM (read-only memory), disk or CD etc.
In the description of this instructions, the description of reference term " embodiment ", " some embodiment ", " example ", " concrete example " or " some examples " etc. means the concrete characteristic, structure, material or the characteristics that combine this embodiment or example to describe and is contained at least one embodiment of the present invention or the example.In this manual, the schematic statement to above-mentioned term not necessarily refers to identical embodiment or example.And concrete characteristic, structure, material or the characteristics of description can combine with suitable manner in any one or more embodiment or example.
Although illustrated and described embodiments of the invention above; It is understandable that; The foregoing description is exemplary; Can not be interpreted as limitation of the present invention, those of ordinary skill in the art can change the foregoing description under the situation that does not break away from principle of the present invention and aim within the scope of the invention, modification, replacement and modification.

Claims (14)

1. a static check method that is used for the source code pairing is characterized in that, may further comprise the steps:
S1, said source code is carried out lexical analysis,, and said source code split into several marks stream the note filtering in the said source code;
S2, said mark is flow to the lang method analyze with the structure syntax tree;
S3, said syntax tree is carried out semantic analysis, searching needs the pairing element, and the said action scope that needs the pairing element of mark;
S4, judge whether the said pairing element that needs matches in said action scope;
S5, if find the said pairing element that needs do not matched, then further judge whether to allow to revise;
S6, add pairing if allow to revise then in said action scope end; And
S7, then do not give a warning and point out if do not allow to revise.
2. the static check method of source code pairing as claimed in claim 1 is characterized in that, also comprises:
S8, if the said pairing element that needs all matches, then directly finish to check.
3. according to claim 1 or claim 2 the static check method of source code pairing is characterized in that the said pairing element that needs comprises: internal memory element, lock element and semaphore element.
4. like the static check method of each described source code pairing of claim 1-3, it is characterized in that, said when needing the pairing element to appear in the principal function when what do not matched, add pairing in the end of said principal function.
5. like the static check method of each described source code pairing of claim 1-3, it is characterized in that, said when needing the pairing element to appear in the subfunction when what do not matched, add pairing in the end of said subfunction.
6. like the static check method of each described source code pairing of claim 1-3, it is characterized in that, said when needing the pairing element to appear in the branched structure when what do not matched, add pairing in the end of each branch of said branched structure.
7. like the static check method of each described source code pairing of claim 1-3, it is characterized in that, said when needing the pairing element to appear in the loop structure when what do not matched, add pairing in the end of each repetend of said loop structure.
8. a static check device that is used for the source code pairing is characterized in that, comprises with the lower part:
Lexical analyzer is used for said source code is carried out lexical analysis, with the note filtering in the said source code, and said source code is split into several marks stream;
Syntax analyzer is used for that said mark is flow to the lang method and analyzes with the structure syntax tree;
Search and mark module, be used for said syntax tree is carried out semantic analysis, searching needs the pairing element, and the said action scope that needs the pairing element of mark;
First judge module is used for judging whether the said pairing element that needs matches in said action scope, if the said pairing element that needs that discovery is not matched then gets into second judge module;
Said second judge module is used to judge whether the permission correction, then gets into correcting module if allow to revise, as if not allowing correction then to give a warning and pointing out; And
Said correcting module is used for adding pairing in said action scope end.
9. the static check device of source code pairing as claimed in claim 8 is characterized in that: need the pairing element all to match if said first judge module is judged, then directly finish inspection.
10. like the static check method of claim 8 or 9 described source code pairings, it is characterized in that the said pairing element that needs comprises: internal memory element, lock element and semaphore element.
11. the static check method like each described source code pairing of claim 8-10 is characterized in that, and is said when needing the pairing element to appear in the principal function when what do not matched, adds pairing in the end of said principal function.
12. the static check method like each described source code pairing of claim 8-10 is characterized in that, and is said when needing the pairing element to appear in the subfunction when what do not matched, adds pairing in the end of said subfunction.
13. the static check method like each described source code pairing of claim 8-10 is characterized in that, and is said when needing the pairing element to appear in the branched structure when what do not matched, adds pairing in the end of each branch of said branched structure.
14. the static check method like each described source code pairing of claim 8-10 is characterized in that, and is said when needing the pairing element to appear in the loop structure when what do not matched, adds pairing in the end of each repetend of said loop structure.
CN201210217915.9A 2012-06-27 2012-06-27 For static check method and the device of source code pairing Active CN102799520B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210217915.9A CN102799520B (en) 2012-06-27 2012-06-27 For static check method and the device of source code pairing

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210217915.9A CN102799520B (en) 2012-06-27 2012-06-27 For static check method and the device of source code pairing

Publications (2)

Publication Number Publication Date
CN102799520A true CN102799520A (en) 2012-11-28
CN102799520B CN102799520B (en) 2016-03-23

Family

ID=47198633

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210217915.9A Active CN102799520B (en) 2012-06-27 2012-06-27 For static check method and the device of source code pairing

Country Status (1)

Country Link
CN (1) CN102799520B (en)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103942137A (en) * 2013-01-23 2014-07-23 腾讯科技(深圳)有限公司 Browser compatibility testing method and device
CN103942145A (en) * 2014-04-15 2014-07-23 清华大学 Self-adaptive mining and analyzing method based on pairing resource management functions
CN105278929A (en) * 2014-06-16 2016-01-27 腾讯科技(深圳)有限公司 Application program audit data processing method, device and system
CN106227668A (en) * 2016-07-29 2016-12-14 腾讯科技(深圳)有限公司 Data processing method and device
CN106371887A (en) * 2016-11-08 2017-02-01 西安电子科技大学 System and method for MSVL compiling
CN107015813A (en) * 2017-04-19 2017-08-04 网易(杭州)网络有限公司 Method, device and electronic equipment that code is repaired
CN108614707A (en) * 2018-04-27 2018-10-02 深圳市腾讯网络信息技术有限公司 Static code inspection method, device, storage medium and computer equipment
CN109471634A (en) * 2018-08-28 2019-03-15 上海思立微电子科技有限公司 The inspection method and equipment of source code format
CN110018828A (en) * 2019-03-11 2019-07-16 深圳市元征科技股份有限公司 Source code inspection method, device and terminal device
CN111563040A (en) * 2020-05-08 2020-08-21 中国工商银行股份有限公司 Block chain intelligent contract code testing method and device
CN111611153A (en) * 2019-02-26 2020-09-01 阿里巴巴集团控股有限公司 Method and device for detecting excessive drawing of user interface
CN114817078A (en) * 2022-06-29 2022-07-29 荣耀终端有限公司 Automatic testing method and device and storage medium

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101436128A (en) * 2007-11-16 2009-05-20 北京邮电大学 Software test case automatic generating method and system
CN101571828A (en) * 2009-06-11 2009-11-04 北京航空航天大学 Method for detecting code security hole based on constraint analysis and model checking
JP2012048660A (en) * 2010-08-30 2012-03-08 Nec Corp Static analysis processing system, method, and program

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101436128A (en) * 2007-11-16 2009-05-20 北京邮电大学 Software test case automatic generating method and system
CN101571828A (en) * 2009-06-11 2009-11-04 北京航空航天大学 Method for detecting code security hole based on constraint analysis and model checking
JP2012048660A (en) * 2010-08-30 2012-03-08 Nec Corp Static analysis processing system, method, and program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
柯平: "内存泄漏静态检测模型的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》, no. 3, 15 March 2010 (2010-03-15) *

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103942137B (en) * 2013-01-23 2017-08-25 腾讯科技(深圳)有限公司 Browser compatibility method of testing and device
CN103942137A (en) * 2013-01-23 2014-07-23 腾讯科技(深圳)有限公司 Browser compatibility testing method and device
CN103942145A (en) * 2014-04-15 2014-07-23 清华大学 Self-adaptive mining and analyzing method based on pairing resource management functions
CN105278929A (en) * 2014-06-16 2016-01-27 腾讯科技(深圳)有限公司 Application program audit data processing method, device and system
CN106227668A (en) * 2016-07-29 2016-12-14 腾讯科技(深圳)有限公司 Data processing method and device
CN106227668B (en) * 2016-07-29 2017-11-17 腾讯科技(深圳)有限公司 Data processing method and device
CN106371887B (en) * 2016-11-08 2019-09-13 西安电子科技大学 A kind of compiling system and method for MSVL language
CN106371887A (en) * 2016-11-08 2017-02-01 西安电子科技大学 System and method for MSVL compiling
CN107015813A (en) * 2017-04-19 2017-08-04 网易(杭州)网络有限公司 Method, device and electronic equipment that code is repaired
CN108614707A (en) * 2018-04-27 2018-10-02 深圳市腾讯网络信息技术有限公司 Static code inspection method, device, storage medium and computer equipment
CN109471634A (en) * 2018-08-28 2019-03-15 上海思立微电子科技有限公司 The inspection method and equipment of source code format
CN109471634B (en) * 2018-08-28 2021-11-16 上海思立微电子科技有限公司 Method and device for checking source code format
CN111611153A (en) * 2019-02-26 2020-09-01 阿里巴巴集团控股有限公司 Method and device for detecting excessive drawing of user interface
CN111611153B (en) * 2019-02-26 2023-05-16 阿里巴巴集团控股有限公司 Method and device for detecting overdrawing of user interface
CN110018828A (en) * 2019-03-11 2019-07-16 深圳市元征科技股份有限公司 Source code inspection method, device and terminal device
CN110018828B (en) * 2019-03-11 2023-02-28 深圳市元征科技股份有限公司 Source code checking method and device and terminal equipment
CN111563040A (en) * 2020-05-08 2020-08-21 中国工商银行股份有限公司 Block chain intelligent contract code testing method and device
CN111563040B (en) * 2020-05-08 2023-08-15 中国工商银行股份有限公司 Block chain intelligent contract code testing method and device
CN114817078A (en) * 2022-06-29 2022-07-29 荣耀终端有限公司 Automatic testing method and device and storage medium

Also Published As

Publication number Publication date
CN102799520B (en) 2016-03-23

Similar Documents

Publication Publication Date Title
CN102799520A (en) Static checking method and device for source code pairing
US8572572B2 (en) Dynamic source code analyzer
US7783470B2 (en) Verification of concurrent programs having parameterized qualities
US20080276260A1 (en) Adaptive User Interface Verification
US7536678B2 (en) System and method for determining the possibility of adverse effect arising from a code change in a computer program
WO2010074860A2 (en) Transforming user script code for debugging
CN108170465B (en) Version information management method, electronic equipment and readable storage medium
US8042099B2 (en) Facilitating availability of object data types at runtime
US9304893B1 (en) Integrated software development and test case management system
KR20100108816A (en) Dynamic instrumentation method and apparatus of program
US8898649B2 (en) Application program analysis method, analysis system and recording medium for identifying a contributing factor for an invalid operation of an application program
US8225286B2 (en) Debugging interpreted input
CN112925524A (en) Method and device for detecting unsafe direct memory access in driver
CN112306841B (en) Automatic testing method, device and equipment for track service
CN108509774B (en) Data processing method and device, electronic equipment and storage medium
Tan et al. Hotcomments: how to make program comments more useful?
US9436452B2 (en) Method for enforcing language subsets
CN104461880A (en) Method for automatically detecting heap corruption in embedded system
EP2535813B1 (en) Method and device for generating an alert during an analysis of performance of a computer application
CN108959085B (en) Method and system for detecting sleep error of kernel module in atomic context
US9880981B2 (en) Automatically detecting the ability to execute processing logic after a parser or validation error
Nishi et al. Automatically identifying valid API versions for software development tutorials on the Web
CN101650688A (en) Method for accessing VM_IO address space and user mode debugger
Martins Benefits and drawbacks of using rust in an existing C/C++ codebase
CN103605921A (en) Kernel extension safety access method and device

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant