由于在c ++注释中使用xml导致奇怪的编译器错误

Strange compiler error due to use of xml in c++ comments

我正在开发一个类似Unix的专有操作系统(我不知道这是否相关),并使用G++进行编译。

我最近注意到,如果我在我的C++评论中放置类似XML的标签,就会得到编译器错误。我并不特别需要这样做,但我认为这很奇怪,我想知道为什么它是编译器的问题。例如:

1
2
3
// <debugoutput>
std::cerr <<"I'm debugging!" << std::endl;
// </debugoutput>

如果它在我的代码中的某个地方,会导致大量的编译器错误。但是,将最后一条注释行改为,可以很好地编译。

有人知道为什么编译器会被注释中的那一行混淆吗?发生这种情况时生成的编译器错误似乎根本不相关-它们更像是类末尾的分号、对定义良好的类的未定义引用等。我无法粘贴来自我的开发人员系统的输出,但请相信我,它看起来与问题无关-它更像编译器得到了控制。融合的


这听起来像是一个与有向图相关的问题,但如果没有实际的错误消息或显示问题的小代码示例,就很难确定。

尝试在</和实际文本之间更改空白,并在C样式的注释中进行尝试,以查看这是否提供了额外的洞察力。

有关C/C++ +有向图和三叉图的信息,请参阅http://e..维基百科org/wiki/c3-三叉树c,以及C++中的三重序列的目的。为什么在C和C++中有有向图?由此而来。

似乎有可能有一些序列被提取(例如作为有向图,它正在丢弃编译器)。