Ejemplo n.º 1
0
        public override Identifier ResolveImportedGlobal(IImportResolver importResolver, IPlatform platform, AddressContext ctx)
        {
            ctx.Warn("Ordinal global imports not supported. Please report this message to the Reko maintainers (https://github.com/uxmal/reko).");
            var id = importResolver.ResolveGlobal(ModuleName, Ordinal, platform);

            return(null);
        }
Ejemplo n.º 2
0
 public override Identifier ResolveImportedGlobal(
     IImportResolver resolver,
     IPlatform platform,
     AddressContext ctx)
 {
     var global = resolver.ResolveGlobal(ModuleName, ImportName, platform);
     return global;
 }
Ejemplo n.º 3
0
        public override Identifier ResolveImportedGlobal(
            IImportResolver resolver,
            IPlatform platform,
            AddressContext ctx)
        {
            var global = resolver.ResolveGlobal(ModuleName, ImportName, platform);

            if (global != null)
            {
                return(global);
            }
            var t = platform.DataTypeFromImportName(ImportName);

            //$REVIEW: the way imported symbols are resolved as
            // globals or functions needs a revisit.
            if (t != null && !(t.Item2 is FunctionType))
            {
                return(new Identifier(t.Item1, t.Item2, new MemoryStorage()));
            }
            else
            {
                return(null);
            }
        }