From 825f001fc03f94ee8076a33e34312f5d4a76eafb Mon Sep 17 00:00:00 2001
From: Hugo Herbelin
Date: Sun, 5 Apr 2020 15:22:18 +0200
Subject: Fixes #11194 (Canonical/Coercion not located for coqdoc).
The location was missing in the parser.
---
test-suite/coqdoc/bug11194.html.out | 37 +++++++++++++++++++++++++++++++++++++
test-suite/coqdoc/bug11194.tex.out | 33 +++++++++++++++++++++++++++++++++
test-suite/coqdoc/bug11194.v | 5 +++++
3 files changed, 75 insertions(+)
create mode 100644 test-suite/coqdoc/bug11194.html.out
create mode 100644 test-suite/coqdoc/bug11194.tex.out
create mode 100644 test-suite/coqdoc/bug11194.v
(limited to 'test-suite')
diff --git a/test-suite/coqdoc/bug11194.html.out b/test-suite/coqdoc/bug11194.html.out
new file mode 100644
index 0000000000..304d041033
--- /dev/null
+++ b/test-suite/coqdoc/bug11194.html.out
@@ -0,0 +1,37 @@
+
+
+
+
+
+Coqdoc.bug11194
+
+
+
+
+
+
+
+
+
+
+
Library Coqdoc.bug11194
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/test-suite/coqdoc/bug11194.tex.out b/test-suite/coqdoc/bug11194.tex.out
new file mode 100644
index 0000000000..243dc20e8f
--- /dev/null
+++ b/test-suite/coqdoc/bug11194.tex.out
@@ -0,0 +1,33 @@
+\documentclass[12pt]{report}
+\usepackage[utf8x]{inputenc}
+
+%Warning: tipa declares many non-standard macros used by utf8x to
+%interpret utf8 characters but extra packages might have to be added
+%such as "textgreek" for Greek letters not already in tipa
+%or "stmaryrd" for mathematical symbols.
+%Utf8 codes missing a LaTeX interpretation can be defined by using
+%\DeclareUnicodeCharacter{code}{interpretation}.
+%Use coqdoc's option -p to add new packages or declarations.
+\usepackage{tipa}
+
+\usepackage[T1]{fontenc}
+\usepackage{fullpage}
+\usepackage{coqdoc}
+\usepackage{amsmath,amssymb}
+\usepackage{url}
+\begin{document}
+\coqlibrary{Coqdoc.bug11194}{Library }{Coqdoc.bug11194}
+
+\begin{coqdoccode}
+\coqdocnoindent
+\coqdockw{Record} \coqdef{Coqdoc.bug11194.a struct}{a\_struct}{\coqdocrecord{a\_struct}} := \{ \coqdef{Coqdoc.bug11194.anum}{anum}{\coqdocprojection{anum}} : \coqexternalref{nat}{http://coq.inria.fr/stdlib/Coq.Init.Datatypes}{\coqdocinductive{nat}} \}.\coqdoceol
+\coqdocnoindent
+\coqdockw{Canonical} \coqdockw{Structure} \coqdef{Coqdoc.bug11194.a struct 0}{a\_struct\_0}{\coqdocdefinition{a\_struct\_0}} := \{| \coqref{Coqdoc.bug11194.Build a struct}{\coqdocconstructor{anum}} \coqref{Coqdoc.bug11194.Build a struct}{\coqdocconstructor{:=}} \coqref{Coqdoc.bug11194.Build a struct}{\coqdocconstructor{0}}|\}.\coqdoceol
+\coqdocnoindent
+\coqdockw{Definition} \coqdef{Coqdoc.bug11194.rename a s 0}{rename\_a\_s\_0}{\coqdocdefinition{rename\_a\_s\_0}} := \coqref{Coqdoc.bug11194.a struct 0}{\coqdocdefinition{a\_struct\_0}}.\coqdoceol
+\coqdocnoindent
+\coqdockw{Coercion} \coqdef{Coqdoc.bug11194.some nat}{some\_nat}{\coqdocdefinition{some\_nat}} := (@\coqexternalref{Some}{http://coq.inria.fr/stdlib/Coq.Init.Datatypes}{\coqdocconstructor{Some}} \coqexternalref{nat}{http://coq.inria.fr/stdlib/Coq.Init.Datatypes}{\coqdocinductive{nat}}).\coqdoceol
+\coqdocnoindent
+\coqdockw{Definition} \coqdef{Coqdoc.bug11194.rename some nat}{rename\_some\_nat}{\coqdocdefinition{rename\_some\_nat}} := \coqref{Coqdoc.bug11194.some nat}{\coqdocdefinition{some\_nat}}.\coqdoceol
+\end{coqdoccode}
+\end{document}
diff --git a/test-suite/coqdoc/bug11194.v b/test-suite/coqdoc/bug11194.v
new file mode 100644
index 0000000000..b1d2a54f25
--- /dev/null
+++ b/test-suite/coqdoc/bug11194.v
@@ -0,0 +1,5 @@
+Record a_struct := { anum : nat }.
+Canonical Structure a_struct_0 := {| anum := 0|}.
+Definition rename_a_s_0 := a_struct_0.
+Coercion some_nat := (@Some nat).
+Definition rename_some_nat := some_nat.
--
cgit v1.2.3