PlayScriptRedux / playscript

PlayScript is an ActionScript compatible compiler and Flash compatible runtime that runs in the Mono/.NET environment
Other
17 stars 9 forks source link

Null vs Undefined Regression #49

Open sushihangover opened 9 years ago

sushihangover commented 9 years ago

These two tests should report null:

./run ./as/test-debug-UndefinedvsNull-1.exe undefined Exit Code : 1 ./run ./as/test-debug-UndefinedvsNull-2.exe undefined Exit Code : 1

This regression was introduced:

git log -n 1 1b41e096fe7068d15386edf2f27ec09bd3755c6b
commit 1b41e096fe7068d15386edf2f27ec09bd3755c6b
Author: Marek Safar <marek.safar@gmail.com>
Date:   Wed Jan 8 20:48:21 2014 +0100

    [mcs] Suport recursive references of non-FX assemblies

FAIL 2015-08-10 23:21:56 -0700 f33a4a7 Merge commit '1b41e096fe7068d15386edf2f27ec09bd3755c6b'

The latest changes caused regression in 1 file(s)
test-883.cs

Merge 1b41e096fe7068d15386edf2f27ec09bd3755c6b changes:
    modified:   ../mcs/driver.cs
    modified:   ../mcs/ikvm.cs
    modified:   ../mcs/import.cs
    modified:   ../tests/Makefile
    new file:   ../tests/dlls/test-883.il
    new file:   ../tests/test-883-lib.cs
    new file:   ../tests/test-883.cs

import.cs

        //PlayScript Regression area - 1b41e096fe7068d15386edf2f27ec09bd3755c6b
        TypeSpec compiled_type;
        if (compiled_types.TryGetValue (type, out compiled_type)) {
            if (compiled_type.BuiltinType == BuiltinTypeSpec.Type.Object && dtype.IsDynamicObject ())
                return module.Compiler.BuiltinTypes.Dynamic;

            return compiled_type;
        }

        return CreateType (type, dtype, true);

By not returning with CreateType vs. compiled_type, this regression occurs...(?)