Scalac 挂在 RegexParser 的阶段类型上

2024-02-24

我有一个 scala 程序,其中有一个解析器组合器。这是通过扩展来完成的scala.util.parsing.combinator.RegexParsers。我使用 Scala 2.10 开发它,一切正常。

昨天我将系统升级到了 Scala 2.11.4,以及 IntelliJ 14.02(这并不重要)。

然而,每当我现在尝试编译这个程序时,scalac在此阶段挂起:

scalac: phase typer on MyParser.scala

我对这段代码没有任何改变,我不明白为什么它挂起或我应该从哪里开始。 IntelliJ 对解析器表达式的后缀运算符有一个警告,例如constants_def? or structure_def*,其中? and *跟随令牌,我添加了这一行,因为SIP:语言模块化特性 http://docs.scala-lang.org/sips/completed/modularizing-language-features.html:

import scala.language.postfixOps

确实没有什么效果,问题还是一样。

我该如何解决发生的问题?我不知道从哪里开始理解为什么相位打字机无限期地挂起。


看起来解决方法是添加显式类型:

def da_gd : Parser[Expression with TimedCondition] =
  pref_timed_gd | da_gd_conjunction |
  (empty_temporal: Parser[Expression with TimedCondition])

堆栈转储显示它正在计算 expr 的类型,并且-Ytyper-debug显示附近。

既然午夜之后没有什么好事发生,我就到此为止。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Scalac 挂在 RegexParser 的阶段类型上 的相关文章

随机推荐

  • 这个访问令牌是如何存储在客户端的,参见FastAPI的教程“Simple OAuth2 with Password and Bearer”

    总的来说 我对 FastAPI 和 OAuth2 还很陌生 我刚刚完成了教程 带有密码和承载的简单 OAuth2 https fastapi tiangolo com tutorial security simple oauth2 这基本上
  • 在仪器测试期间将大写字母发送到 TextEdit

    我正在为我的 Android 应用程序编写 JUnit 测试用例 测试类扩展ActivityInstrumentationTestCase2并打电话sendKeys 模拟用户输入TextEdit小部件 但是 所有字母键码 例如KeyEven
  • Docker无法访问jar文件

    docker 容器无法访问通过挂载点访问的 jar 文件 my project dir 我确信这不是权限问题 因为我在本地更改了访问权限 所以它应该能够读 写 执行它 这是Dockerfile FROM tomcat 9 jre8 RUN
  • 在 .cshtml 页面中发送和接收数据

    我正在做我的作业 其中我正在 asp net MVC 3 中开发一个购物网站 目前我仅在视图中完成我的工作 我有一个产品页面 单击详细信息后 我必须打开产品详细信息页面 a href ProductDetails cshtml Detail
  • 是否可以在编译时阻止特定基类的多重继承?

    我想要做的是开发两个不同的基类 这两个基类不应在一个派生类中一起继承 有什么方法可以在编译时强制执行此操作吗 class Base1 class Base2 class Derived1 public Base1 OK class Deri
  • 使用 Appium 和 C# 在 Android 模拟器的浏览器中找不到元素

    我想使用 C 和 Appium 在 Android 模拟器上自动化移动网站测试 我想首先自动化一个简单的测试场景 1 启动浏览器2 查找元素3 清除它4 发送密钥 我的第二步有问题 每次 MSTest 尝试执行下面代码中的 FindElem
  • 为什么下面的 Haskell 代码是不确定的?

    我一直在学习 Haskell学习 Haskell http learnyouahaskell com chapters and 刚刚遇到以下声明 http learnyouahaskell com functors applicative
  • 使用 ssl 证书进行 pg_restore

    有人可以帮助我使用 SSL 证书恢复 postgres 数据库吗 我尝试了以下方法 但没有成功 pg restore host hostname user username dbname database name sslcert sslc
  • 如何在bootstrap中将div居中居中?

    我想将 7 个 div 居中 但我不知道该怎么做 任何想法 我不想单独更改所有元素的边距 正如您在图片上看到的那样 与我的按钮相比 div 不居中 并且存在 12 列引导问题
  • iOS ARM64 系统调用

    我正在学习更多关于 shellcode 以及在 iOS 设备上使用 arm64 进行系统调用的知识 我测试的设备是 iPhone 6S 我从此链接获取了系统调用列表 https github com radare radare2 blob
  • 如何强制执行“override”关键字?

    有没有办法强制使用 C 11overrideVisual C 2012 中的关键字 也就是说 如果我忘记说override 然后我想得到警告 错误 C 11几乎有你想要的 原来是override关键字是更大提案的一部分 N2928 http
  • Google Places API 未返回印度的任何结果

    https maps googleapis com maps api place search json location 28 635704 77 224982 radius 50000 types restaurant language
  • SQL Server中删除表和删除表有什么区别?

    在 SQL Server 中 以下两者有什么区别 右键单击数据库对象 表 视图 并选择 删除表 即将表脚本编写为 gt DROP To gt New Query Editor Window 右键单击数据库对象 表 视图 并选择删除 我尝试了
  • Chrome 不缓存 css 文件。缓存适用于 .js/.png 文件。

    我观察到 CSS 文件没有在 Chrome 浏览器上缓存 我的应用程序是由 Angular CLI 构建的 所有必需的缓存控制标头和 Expires 标头均设置为 5 分钟 Accept Ranges bytes Cache Control
  • 在 R 中绘制多行文本框

    我正在使用 R 创建多图布局插图 并且能够在其中一个图中创建多行文本框会很方便 我熟悉使用 Sweave 来组合图像 文本和 R 代码 但是由于各种原因 我需要将其作为在 R 中生成的单页图 因此需要绘制文本框而不是使用 Latex 标记
  • GET_TASKS 权限已弃用

    我有一个使用此权限的安全应用程序 App Locker android permission GET TASKS 在 android Lollipop 中 此权限已被弃用 我希望我的应用程序可以在 21 API 中运行 谁能指导我怎么做 T
  • JPADatabase 的 jooq codegen 无法正常工作

    我在 JPADatabase 中使用 jooq codegen 时遇到问题 我经历过这个post https stackoverflow com questions 42968155 unable to generate jooq clas
  • 如何使用 javascript/jquery 获取具有特定文本的元素的类名称?

    我需要一种 JavaScript 或 jQuery 方法来通过 DIV 元素包含的文本提取 DIV 元素的类名 让我们举例说明 如果我有的话 我们可以说以下代码 div class className UniqueText div 我需要知
  • 用于设置主页功能的通用 JavaScript [重复]

    这个问题在这里已经有答案了 是否有任何适用于几乎所有浏览器的 javascript 将网页设置为主页 我正在使用下面的一种 但它只适用于 i e 和 mozilla var flag false function setHomepage w
  • Scalac 挂在 RegexParser 的阶段类型上

    我有一个 scala 程序 其中有一个解析器组合器 这是通过扩展来完成的scala util parsing combinator RegexParsers 我使用 Scala 2 10 开发它 一切正常 昨天我将系统升级到了 Scala