DETAILED ACTION
1. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
2. This communication is in response to the communication filed on 12/14/2023.
3. Claims filed 12/14/2023 have been acknowledged. Claims 1-20 are pending in the application.
Information Disclosure Statement
4. The information disclosure statements (IDS) submitted is/are in compliance with the provisions of 37 CFR 1.97. Accordingly, the information disclosure statement is being considered by the examiner.
Claim Rejections - 35 USC § 102
5. In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
6. The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale or otherwise available to the public before the effective filing date of the claimed invention.
7. Claims 1,3, 6-14,16,18,20 are rejected under the first inventor to file provisions of the AIA , 35 U.S.C. 102(a)(1) as being anticipated by Harvey (Patent. No. US 8,533,695 B2; hereinafter referred to as Harvey).
As per claim 1, Harvey discloses a method, comprising:
accessing, by a compiler executing on a computing device, a source code instruction file comprising source code instructions written to comply with a predetermined programming language syntax, the compiler operable to generate an executable file based on the source code instruction file (See Fig. 3, also column 9, lines 5-19 – generating executable from source code file);
identifying, by the compiler based on the source code instruction file, an annotation that identifies object size verification instructions that, when executed and passed a reference to an object that is defined by the source code instructions, returns a memory size of the object (See column 9, lines 55-65, column 10, lines 1-13 – identifying size by the compiler and annotations);
identifying, by the compiler, source code instructions that access the object (See column 10, lines 35-50 – access to objects); and
injecting, by the compiler, in the executable file, executable instructions that cause the object size verification instructions to be executed to determine the memory size of the object and condition the access to the object on a value returned by the object size verification instructions (See Fig. 3, also column 11, lines 25-40 – inserting size checking code for execution).
As per claim 3, Harvey discloses the method of claim 1 (See claim 1 rejection above, under the first inventor to file provisions of the AIA , 35 USC § 102(a)(1)), wherein identifying the source code instructions that access the object comprises: parsing, by the compiler, the source code instructions to generate parsed source code instructions; and detecting, by the compiler, the source code instructions that access the object based on the parsed source code instructions and the annotation (See Harvey’s column 9, lines 5-19 – parsing and utilizing parsed code for the objects).
As per claim 7, Harvey discloses the method of claim 1 (See claim 1 rejection above, under the first inventor to file provisions of the AIA , 35 USC § 102(a)(1)), wherein injecting, in the executable file, the executable instructions comprises: determining a range of size values for the object in the source code instructions that access the object; and injecting, in the executable file, executable instructions based on the range of size values for the object (See column 9, lines 55-65, column 10, lines 1-13 – valid range check for array).
As per claim 8, Harvey discloses the method of claim 1 (See claim 1 rejection above, under the first inventor to file provisions of the AIA , 35 USC § 102(a)(1)), wherein the reference to the object that is defined by the source code instructions comprises a pointer to the object (See Harvey’s column 9, lines 20-40 – pointer to object).
As per claim 9, Harvey discloses the method of claim 8 (See claim 1 rejection above, under the first inventor to file provisions of the AIA , 35 USC § 102(a)(1)), wherein identifying source code instructions that access the object comprises identifying source code instructions that are passed a reference to the pointer (See Harvey’s column 9, lines 20-40 – reference to pointer).
As per claim 10, Harvey discloses the method of claim 1 (See claim 1 rejection above, under the first inventor to file provisions of the AIA , 35 USC § 102(a)(1)), wherein the object size verification instructions are passed a list of parameters, wherein a parameter of the parameters comprises the reference to the object (See column 14, lines 30-65 – size verification by passing parameter).
As per claim 11, Harvey discloses the method of claim 1 (See claim 1 rejection above, under the first inventor to file provisions of the AIA , 35 USC § 102(a)(1)), wherein the executable file comprises assembly code, object code, or machine code (See abstract – executable file).
As per claim 12, Harvey discloses the method of claim 1 (See claim 1 rejection above, under the first inventor to file provisions of the AIA , 35 USC § 102(a)(1)), wherein the object size verification instructions comprise a function call to a function in an external library identified in the annotation (See column 13, lines 20-65 – size verification with function call).
As per claim 13, Harvey discloses the method of claim 1 (See claim 1 rejection above, under the first inventor to file provisions of the AIA , 35 USC § 102(a)(1)), wherein the memory size of the object comprises an estimated memory size of the object (See column 7, line 25 – dynamic determination).
Claims 14, 16 are essentially the same as claims 1,3 except that they are set forth the claimed invention as a computing device, and they are rejected with the same reasoning as applied hereinabove.
Claims 18, 20 are essentially the same as claims 1, 3 except that they are set forth the claimed invention as a non-transitory computer-readable storage medium, and they are rejected with the same reasoning as applied hereinabove.
Claim Rejections – 35 USC § 103
8. In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
9. The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102 of this title, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
10. Claims 2,15,19 are rejected under the first inventor to file provisions of the AIA , 35 U.S.C. 103 as being unpatentable over the combination of Harvey (Patent. No. US 8,533,695 B2; hereinafter referred to as Harvey), in view of Chapman et al. (Patent. No. US 9,021,455 B2; hereinafter referred to as Chapman).
As per claim 2, Harvey discloses the method of claim 1 (See claim 1 rejection above, under the first inventor to file provisions of the AIA , 35 USC § 102(a)(1)).
However, Harvey does not explicitly states - wherein identifying, based on the source code instruction file, the annotation that identifies the object size verification instructions comprises: header file comprising a declaration of the object size verification instructions; and identifying the annotation that identifies the object size verification instructions in the source code instruction file.
Chapman discloses - header file comprising a declaration of the object size verification instructions; and identifying the annotation that identifies the object size verification instructions in the source code instruction file (See column 1, lines 35-45 – header file verification instructions for size calculation).
Harvey and Chapman are directed to software program development, which are analogous prior art.
It would have been obvious to one ordinary skill in the art before the effective filing date of the claimed invention (first inventor to file provisions of the AIA ) to incorporate and combine Harvey’s compile time bounds checking; and further combine it with Chapman’s creation of packed data objects and size calculation; thus, the combination allows bounds checking code optimization for objects, while avoiding runtime errors and providing memory safety with reduced memory fragmentation, and providing faster data access (See Harvey’s and Chapman’s abstracts and backgrounds).
Claim 15 is essentially the same as claim 2 except that it is set forth the claimed invention as a computing device, and it is rejected with the same reasoning as applied hereinabove.
Claim 19 is are essentially the same as claim 2 except that it is set forth the claimed invention as a non-transitory computer-readable storage medium, and it is rejected with the same reasoning as applied hereinabove.
Allowable Subject Matter
11. Claims 4,5, 17 are objected to as being dependent upon a rejected base claim, but would be allowable if rewritten in independent form including all of the limitations of the base claim and any intervening claims. The prior art of record fails to disclose the limitations: “… generating executable instructions that condition the access to the object on the value returned by the object size verification instructions, wherein the condition comprises executable instructions to return an error when a size of the object is greater than the value returned by the object size verification instructions; and writing the executable instructions that condition the access to the object on the size of the object and the value returned by the object size verification instructions to the executable file”; as specified by the claims.
12. Please see M.P.E.P. 2111 Claim Interpretation; Broadest Reasonable Interpretation [R-9]; 2111.01 Plain Meaning [R-9]: III. “Plain Meaning” Refers to the ordinary and customary meaning given to the term by those of ordinary skill in the art”
PNG
media_image1.png
18
19
media_image1.png
Greyscale
. Claims must be given the broadest reasonable interpretation during examination, and limitations appearing in the specification but not recited in the claim are not read into the claims (See M.P.E.P. 2111 [R-I]).
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to FRANCISCO JAVIER APONTE whose telephone number is (571)270-7164. The examiner can normally be reached M-F: 8-4.
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, James Trujillo can be reached on (571)272-3677. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/FRANCISCO J APONTE/Primary Examiner, Art Unit 2151 03/03/2026.