<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="/oai-pmh.xsl"?>
<OAI-PMH xmlns="http://www.openarchives.org/OAI/2.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/ http://www.openarchives.org/OAI/2.0/OAI-PMH.xsd">
  <responseDate>2026-09-21T17:16:26Z</responseDate>
  <request identifier="oai:www.ideals.illinois.edu:2142/26250" metadataPrefix="etdms" verb="GetRecord">https://www.ideals.illinois.edu/oai-pmh</request>
  <GetRecord>
    <record>
      <header>
        <identifier>oai:www.ideals.illinois.edu:2142/26250</identifier>
        <datestamp>2023-07-10</datestamp>
        <setSpec>col_2142_5131</setSpec>
        <setSpec>col_2142_10761</setSpec>
        <setSpec>com_2142_5130</setSpec>
        <setSpec>com_2142_10755</setSpec>
        <setSpec>com_2142_234</setSpec>
      </header>
      <metadata>
        <thesis xmlns="http://www.ndltd.org/standards/metadata/etdms/1.1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:dc="http://purl.org/dc/elements/1.1/" xsi:schemaLocation="http://www.ndltd.org/standards/metadata/etdms/1.1/ http://www.ndltd.org/standards/metadata/etdms/1.1/etdms11.xsd http://purl.org/dc/elements/1.1/ http://www.ndltd.org/standards/metadata/etdms/1.1/etdmsdc.xsd">
          <dc:contributor>Adve, Vikram S.</dc:contributor>
          <dc:creator>Aggarwal, Arushi</dc:creator>
          <dc:date>2011-08-25T22:20:42Z</dc:date>
          <dc:date>2011-08-25T22:20:42Z</dc:date>
          <dc:date>2011-08-25T22:20:42Z</dc:date>
          <dc:date>2011-08</dc:date>
          <dc:description>C/C++ are the languages of choice for development of many widely used
system softwares. However, these languages do not provide the strong safety
guarantees that safe languages such as Java do. Programming mistakes can
introduce type errors that are not caught at compile time. These errors
may subsequently be triggered at runtime, and their sources maybe hard to
detect.
This thesis presents the design and implementation for a dynamic type
checker for C/C++ programs. It is built using the LLVM compiler infras-
tructure and provides type safety for programs that have been compiled to
the LLVM IR.
The thesis also discusses the design of static analysis to reduce the overhead
of the dynamic type checker. We present an implementation of the static
analysis and discuss how its results can be used to optimize the dynamic
type checker.
We also present performance evaluation on various benchmarks and system
software. We present results that show that we can catch most errors with
relatively low overhead.</dc:description>
          <dc:description>Item withdrawn by Rebecca Bryant (rabryant@illinois.edu) on 2011-07-15T21:39:42Z
Item was in collections:
University of Illinois Theses &amp; Dissertations (ID: 1)
No. of bitstreams: 1
Aggarwal_Arushi.pdf: 7116 bytes, checksum: fe2513c38dd5f6a0bf40b344dafc06e5 (MD5)</dc:description>
          <dc:description>Made available in DSpace on 2011-08-25T22:20:42Z (GMT). No. of bitstreams: 2
Aggarwal_Arushi.pdf: 344136 bytes, checksum: 749835cc2c383013d3186b59b3597419 (MD5)
license.txt: 4065 bytes, checksum: 5846f6204fc2c6c8cd36b0f1e1e2a0e4 (MD5)</dc:description>
          <dc:identifier>http://hdl.handle.net/2142/26250</dc:identifier>
          <dc:language>en</dc:language>
          <dc:rights>Copyright 2011 Arushi Aggarwal</dc:rights>
          <dc:subject>Type Safety</dc:subject>
          <dc:subject>C language</dc:subject>
          <dc:title>Hybrid Static/Dynamic Type Safety for C/C++ Programs</dc:title>
          <degree>
            <department>Computer Science</department>
            <departmentCode>1434</departmentCode>
            <discipline>Computer Science</discipline>
            <disciplineCode>0112</disciplineCode>
            <grantor>University of Illinois at Urbana-Champaign</grantor>
            <level>Thesis</level>
            <name>M.S.</name>
            <program>MS:Computer Science -UIUC</program>
            <programCode>10KS0112MS</programCode>
          </degree>
        </thesis>
      </metadata>
    </record>
  </GetRecord>
</OAI-PMH>
