IP Library › Granted Patent US 11,080,029
Granted Patent B2
US 11,080,029 · App. 16/553,364 · Granted Aug 3, 2021

Configuration management through information and code injection at compile time

Inventor: Ulrich Drepper (Grasbrunn, DE)
Assignee: Red Hat, Inc.
G06F8/4435
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,080,029
App. No.
16/553,364
Filed
Aug 28, 2019
Granted
Aug 3, 2021
Kind
B2
Art Unit
2199
USPC
717/159
Abstract

Systems and methods for configuration management through information and code injection at compile time. An example method comprises: receiving a source code comprising one or more references to a variable; receiving metadata associated with the source code, wherein the metadata specifies a range of values of the variable; and identifying, in view of the range of values of the variable, a reachable section of the source code.

Claims (35)

1. A method comprising:

receiving, by a processing device, a source code comprising one or more references to a run-time variable;

receiving metadata provided by a markup in the source code, wherein the metadata comprises a compiler-internal variable that specifies a run-time value of the run-time variable, wherein the run-time value determines an outcome of evaluating a conditional expression referencing the run-time variable;

identifying, at compile time, by evaluating the conditional expression based on the run-time value of the run-time variable, a reachable section of the source code;

injecting the run-time value of the run-time variable into the source code; and

compiling the reachable section of the source code.

2. The method of claim 1 , further comprising:

identifying, in view of the run-time value of the run-time variable, an unreachable section of the source code; and

excluding the unreachable section of the source code from a scope of compilation.

3. The method of claim 1 , wherein the metadata is further provided by a preprocessor directive.

4. The method of claim 1 , wherein the metadata is further provided by a configuration file.

5. A system comprising:

a memory;

a processing device operatively coupled to the memory, the processing device to:

receive a source code comprising one or more references to a run-time variable;

receive metadata provided by a markup in the source code, wherein the metadata comprises a compiler-internal variable that specifies a run-time value of the run-time variable, wherein the run-time value determines an outcome of evaluating a conditional expression referencing the run-time variable;

identify, at compile time, by evaluating the conditional expression based on the run-time value of the run-time variable, a reachable section of the source code;

inject the run-time value of the run-time variable into the source code; and

compile the reachable section of the source code.

6. The system of claim 5 , wherein the processing device is further to:

identify, in view of the run-time values of the run-time variable, an unreachable section of the source code; and

exclude the unreachable section of the source code from a scope of compilation.

7. The system of claim 5 , wherein the metadata is further provided by a preprocessor directive.

8. The system of claim 5 , wherein the metadata is further provided by a configuration file.

9. A non-transitory computer-readable storage medium comprising executable instructions that, when executed by a processing device, cause the processing device to:

receive a source code comprising one or more references to a run-time variable;

receive metadata provided by a markup in the source code, wherein the metadata comprises a compiler-internal variable that specifies a run-time value of the run-time variable, wherein the run-time value determines an outcome of evaluating a conditional expression referencing the run-time variable;

identify, at compile time, by evaluating the conditional expression based on the run-time value of the run-time variable, a reachable section of the source code;

inject the run-time value of the run-time variable into the source code; and

compile the reachable section of the source code.

10. The non-transitory computer-readable storage medium of claim 9 , further comprising executable instructions that, when executed by the processing device, cause the processing device to:

identify, in view of the run-time value of the run-time variable, an unreachable section of the source code; and

exclude the unreachable section of the source code from a scope of compilation.

11. The non-transitory computer-readable storage medium of claim 9 , wherein the metadata is further provided by a preprocessor directive.

12. The non-transitory computer-readable storage medium of claim 9 , wherein the metadata is further provided by a configuration file.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2019
From: DREPPER, ULRICH
To: RED HAT, INC.
Reel/Frame 050198/0612 →
Continuity (1)
Related Publication 20210064352A1 · Mar 4, 2021