Mercurial > projects > ldc
changeset 1090:6a19c36fc4a6
Merge
author | Frits van Bommel <fvbommel wxs.nl> |
---|---|
date | Wed, 11 Mar 2009 01:01:40 +0100 |
parents | d33b0d4b816a (diff) b1d75bf46ffa (current diff) |
children | 20d96c148b39 |
files | |
diffstat | 2 files changed, 10 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/dmd/template.c Tue Mar 10 13:59:50 2009 -0400 +++ b/dmd/template.c Wed Mar 11 01:01:40 2009 +0100 @@ -3186,6 +3186,14 @@ { //printf("setting aliasdecl\n"); aliasdecl = new AliasDeclaration(loc, s->ident, s); + + // LDC propagate internal information + if (tempdecl->llvmInternal) { + s->llvmInternal = tempdecl->llvmInternal; + if (FuncDeclaration* fd = s->isFuncDeclaration()) { + fd->intrinsicName = tempdecl->intrinsicName; + } + } } } }
--- a/gen/llvmhelpers.cpp Tue Mar 10 13:59:50 2009 -0400 +++ b/gen/llvmhelpers.cpp Wed Mar 11 01:01:40 2009 +0100 @@ -1541,8 +1541,8 @@ name.c_str(), T->toChars(), (name[pos-1] == 'i' ? "n integral" : " floating-point")); } else { - // Just plain wrong. - ti->error("has an invalid intrinsic name: %s", name.c_str()); + // Just plain wrong. (Error in declaration, not instantiation) + td->error("has an invalid intrinsic name: %s", name.c_str()); } fatal(); // or LLVM asserts }