Skip to content
Snippets Groups Projects
  • Richard Smith's avatar
    23f37c4b
    Reinstate r213348, reverted in r213395, with an additional bug fix and more · 23f37c4b
    Richard Smith authored
    thorough tests.
    
    Original commit message:
    
    [modules] Fix macro hiding bug exposed if:
    
     * A submodule of module A is imported into module B
     * Another submodule of module A that is not imported into B exports a macro
     * Some submodule of module B also exports a definition of the macro, and
       happens to be the first submodule of B that imports module A.
    
    In this case, we would incorrectly determine that A's macro redefines B's
    macro, and so we don't need to re-export B's macro at all.
    
    This happens with the 'assert' macro in an LLVM self-host. =(
    
    
    git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@213416 91177308-0d34-0410-b5e6-96231b3b80d8
    23f37c4b
    History
    Reinstate r213348, reverted in r213395, with an additional bug fix and more
    Richard Smith authored
    thorough tests.
    
    Original commit message:
    
    [modules] Fix macro hiding bug exposed if:
    
     * A submodule of module A is imported into module B
     * Another submodule of module A that is not imported into B exports a macro
     * Some submodule of module B also exports a definition of the macro, and
       happens to be the first submodule of B that imports module A.
    
    In this case, we would incorrectly determine that A's macro redefines B's
    macro, and so we don't need to re-export B's macro at all.
    
    This happens with the 'assert' macro in an LLVM self-host. =(
    
    
    git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@213416 91177308-0d34-0410-b5e6-96231b3b80d8
Code owners
Assign users and groups as approvers for specific file changes. Learn more.