问题标签 [scalac]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3866 浏览

scala - sbt 0.12.4 - 有 x 个功能警告;使用 -feature 重新运行以获取详细信息

我收到一个错误there were 15 feature warning(s); re-run with -feature for details

build.sbt

我无法找出那个错误是什么,因为它没有说,即使我运行 sbt as $ /usr/local/sbt/bin/sbt -feature

这是JDK 1.7

错误是什么,我该如何解决?

更新

构建.sbt

或在 sbt 本身:

> set scalacOptions in ThisBuild ++= Seq("-unchecked", "-deprecation")

错误保持不变。

0 投票
4 回答
13021 浏览

scala - 未找到编译器镜像中的对象 scala - 以编程方式运行 Scala 编译器

运行一个带有 Java 7 的简单 SBT 项目(详情如下)并sbt run在命令行调用(没有 IntelliJ 或任何东西)

来源

错误

构建.sbt

爪哇

0 投票
1 回答
79 浏览

scala - 在 Scala 中查找所有非综合方法/函数的类型签名

我正在尝试找到一种方法来获取 Scala 编译器的符号表 (?) 并将所有类型信息转储到特定 SBT 项目中的方法/函数中。我目前的方向是编译器插件,在typer阶段之后立即连接到它。

闲逛了一下,我正在看着根镜并检查info.decls它的场,大致如下:

它转储了很多东西,但是..我仍然得到了很多奇怪的输出,比如class anonfun$reduceUnordered$1 extends ;

想知道我是否朝着正确的方向前进,如果是这样,我应该更多地关注什么才能获得项目中方法的类型签名?

0 投票
1 回答
115 浏览

scala - scala 编译器的 stackoverflow 保护

在运行时我可以:

但不能为编译时做类似的事情:

似乎是无限循环/递归保护,但据我了解停止问题- 没有通用方法来检测图灵完备语言的无限递归(因为检测器本身可能不会停止),因此额外的编译器检查通常不会在这里工作.

那么有没有办法在scalac上获得无限递归?而且,还有其他(除了防止这种递归)理由illegal cyclic reference吗?

0 投票
2 回答
719 浏览

scala - scala Ywarn-all 用法

我正在尝试使用 scala 编译器 Y 警告,但我认为我做得不对。在下面的示例中,未使用 nums ,因此我希望 -Ywarn-value-discard 对此打印警告。有两个 if 条件,一个嵌套在另一个内部。孩子 if 的条件与父母的完全相反,因此其中的任何内容都是死代码。但是 -Ywarn-dead-code 并没有对此发出警告。谁能建议我可能做错了什么?任何指针将不胜感激。

$scalac -Xlint -Ywarn-all DeadCodeWarn.scala默默地成功。

0 投票
1 回答
254 浏览

scala - Scala:对象引用可以通过嵌套函数吗?

在 Scala 中,传递指向对象的指针,而不是对象本身。那么这样说是否正确,通过如下嵌套函数传递对象指针没有问题,即不会分配对象层?

在这种情况下,在 and 的实例上调用 when ,myFunc因为默认是按值调用,所以 scala “首先评估参数”。我的困惑是,从这个意义上说,“评估”是对象的复制,还是仅仅是指针。这显然会影响我是否在 for 表达式之前拉出参数。 ParametersContext

0 投票
0 回答
84 浏览

scala - Scala 编译器在类路径中有空格

scalac D:\temp\main.scala作品

scalac "D:\Programming\Java works\my project\main.scala"返回此错误:

作品\我此时出乎意料

我认为问题是由路径中的空格引起的。我该如何解决这个问题(我不会删除路径中的空格)?

Windows 7 x64 上的 Scala 2.11.6(最新版本)

0 投票
1 回答
2375 浏览

java - What is a ScalaSignature?

When decompiling Scala files to Java code, one often comes across classes that are annotated with the ScalaSignatures. These seem to only have one annotation value, a somewhat encoded String. Why does the Scala Compiler create such an odd construct, instead of using custom Attributes in the class file?

0 投票
1 回答
81 浏览

scala - scala nsc中的主要方法调用

我试图通过 nsc(新的 scala 编译器)的代码。我有点困惑Main.scala。它的实现如下:

我的第一个问题是,Main编译器进程如何调用?当我按照以下方式称呼某些东西时:

在某个地方,newCompiler并且doCompile正在被调用,有人可以帮助我跟踪它是如何被调用的以及编译器是如何被初始化的吗?

任何指针将不胜感激。

谢谢

0 投票
1 回答
105 浏览

scala - 又一场难以捉摸的非详尽比赛

我收到以下匹配警告。

match 可能并不详尽。它会在以下输入上失败: Some((x: Abstract forSome x not in (A, B, C)))

代码:

如果您想知道,这里的案例类没有参数,但在我的真实代码中它们有。Abstract我希望答案不是“编译器无法知道程序中某处是否还有其他子类......

使抽象类密封是唯一的解决方案吗?scala 不是一个很动态的语言,那么编译器怎么不知道编译警告中提到的组是一个空组呢?