From 53f665355b9178eb9c230fb284bd60fb1dd00967 Mon Sep 17 00:00:00 2001 From: Shunsuke Shibayama Date: Thu, 18 Aug 2022 18:07:33 +0900 Subject: [PATCH] Fix #56 --- compiler/erg_common/codeobj.rs | 2 -- compiler/erg_compiler/compile.rs | 19 ++----------------- 2 files changed, 2 insertions(+), 19 deletions(-) diff --git a/compiler/erg_common/codeobj.rs b/compiler/erg_common/codeobj.rs index 0632e300..62cd9252 100644 --- a/compiler/erg_common/codeobj.rs +++ b/compiler/erg_common/codeobj.rs @@ -53,7 +53,6 @@ pub enum CodeObjFlags { FutureAnnotations = 0x10_0000, // Erg-specific flags EvmDynParam = 0x1000_0000, - EvmDynamic = 0x2000_0000, EvmNoGC = 0x4000_0000, Illegal = 0x0000, } @@ -82,7 +81,6 @@ impl From for CodeObjFlags { 0x10_0000 => Self::FutureAnnotations, // EVM flags 0x1000_0000 => Self::EvmDynParam, - 0x2000_0000 => Self::EvmDynamic, 0x4000_0000 => Self::EvmNoGC, _ => Self::Illegal, } diff --git a/compiler/erg_compiler/compile.rs b/compiler/erg_compiler/compile.rs index cb904aca..bdacf991 100644 --- a/compiler/erg_compiler/compile.rs +++ b/compiler/erg_compiler/compile.rs @@ -3,7 +3,7 @@ //! コンパイラーを定義する use std::path::Path; -use erg_common::codeobj::{CodeObj, CodeObjFlags}; +use erg_common::codeobj::CodeObj; use erg_common::color::{GREEN, RESET}; use erg_common::config::{ErgConfig, Input}; use erg_common::error::MultiErrorDisplay; @@ -158,26 +158,14 @@ impl Compiler { pub fn compile(&mut self, src: Str, mode: &str) -> Result { log!("{GREEN}[DEBUG] the compiling process has started.{RESET}"); - let mut dynamic = true; let mut cfg = self.cfg.copy(); cfg.input = Input::Str(src); let mut parser = ParserRunner::new(cfg); let ast = parser.parse()?; - if ast.is_empty() { - return Ok(CodeObj::empty( - vec![], - Str::rc(self.input().enclosed_name()), - "", - 1, - )); - } let (hir, warns) = self .lowerer .lower(ast, mode) .map_err(|errs| self.convert(errs))?; - if warns.is_empty() { - dynamic = false; - } if self.cfg.verbose >= 2 { let warns = self.convert(warns); warns.fmt_all_stderr(); @@ -190,10 +178,7 @@ impl Compiler { let hir = ownership_checker .check(hir) .map_err(|errs| self.convert(errs))?; - let mut codeobj = self.code_generator.codegen(hir); - if dynamic { - codeobj.flags += CodeObjFlags::EvmDynamic as u32; - } + let codeobj = self.code_generator.codegen(hir); log!("{GREEN}code object:\n{}", codeobj.code_info()); log!( "[DEBUG] the compiling process has completed, found errors: {}{RESET}",