Mercurial > projects > ldc
view gen/passes/Passes.h @ 1512:09734fb929c0
Make == for associative arrays test for equality, not identity.
_aaEq was added to runtime/internal/aaA.d which forwards to
TypeInfo_AssociativeArray.equals in genobj.d. On the codegen side, DtoAAEquals
was added to gen/aa.cpp and is called from EqualExp::toElem in gen/toir.cpp.
I assume that the frontend will produce an error if == is used on associative
arrays of different type.
This fixes DMD bug 1429.
author | Christian Kamm <kamm incasoftware de> |
---|---|
date | Sun, 21 Jun 2009 19:05:24 +0200 |
parents | defafbabbe32 |
children | c88b16d4a13c |
line wrap: on
line source
#ifndef LDC_PASSES_H #define LDC_PASSES_H #include "gen/metadata.h" namespace llvm { class FunctionPass; class ModulePass; } // Performs simplifications on runtime calls. llvm::FunctionPass* createSimplifyDRuntimeCalls(); #ifdef USE_METADATA llvm::FunctionPass* createGarbageCollect2Stack(); llvm::ModulePass* createStripMetaData(); #endif #if LLVM_REV >= 68940 llvm::ModulePass* createStripExternalsPass(); #endif #endif