mirror of
https://github.com/xomboverlord/ldc.git
synced 2026-02-26 00:23:14 +01:00
D2:
Applied function type from D1 frontend that got removed in D2, it's critical for member function type to be correct. Fixed a bunch of type discrepancies in druntime object.di vs. genobj.d . Disabled (#if 0) some potentally very large type dumps for -vv . Updated classinfo and typeinfo generation for D2, almost complete now. Added finer grained checks for vtbl type mismatching, aids debugging.
This commit is contained in:
@@ -432,18 +432,22 @@ DValue* DtoCallFunction(Loc& loc, Type* resulttype, DValue* fnval, Expressions*
|
||||
assert(fnarg);
|
||||
DValue* argval = DtoArgument(fnarg, (Expression*)arguments->data[i]);
|
||||
|
||||
#if 0
|
||||
if (Logger::enabled()) {
|
||||
Logger::cout() << "Argument before ABI: " << *argval->getRVal() << '\n';
|
||||
Logger::cout() << "Argument type before ABI: " << *DtoType(argval->getType()) << '\n';
|
||||
}
|
||||
#endif
|
||||
|
||||
// give the ABI a say
|
||||
LLValue* arg = tf->fty.putParam(argval->getType(), i, argval);
|
||||
|
||||
#if 0
|
||||
if (Logger::enabled()) {
|
||||
Logger::cout() << "Argument after ABI: " << *arg << '\n';
|
||||
Logger::cout() << "Argument type after ABI: " << *arg->getType() << '\n';
|
||||
}
|
||||
#endif
|
||||
|
||||
int j = tf->fty.reverseParams ? beg + n - i - 1 : beg + i;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user