diff --git a/inc/qcbor/qcbor_encode.h b/inc/qcbor/qcbor_encode.h
index 54a6c87..ae5027a 100644
--- a/inc/qcbor/qcbor_encode.h
+++ b/inc/qcbor/qcbor_encode.h
@@ -358,23 +358,24 @@
  */
 
 
-/*
+/**
  The size of the buffer to be passed to QCBOREncode_EncodeHead(). It is one
  byte larger than sizeof(uint64_t) + 1, the actual maximum size of the
- head of a CBOR data item. because QCBOREncode_EncodeHead() needs
+ head of a CBOR data item because QCBOREncode_EncodeHead() needs
  one extra byte to work.
  */
 #define QCBOR_HEAD_BUFFER_SIZE  (sizeof(uint64_t) + 2)
 
 
 /**
- Output the full CBOR tag. See @ref CBORTags, @ref Tag-Usage and @ref Tags-Overview.
+ Output the full CBOR tag. See @ref CBORTags, @ref Tag-Usage and
+ @ref Tags-Overview.
  */
 #define QCBOR_ENCODE_AS_TAG      0
 
 /**
-  Output only the 'borrowed' content format for the relevant tag.
-  See @ref CBORTags, @ref Tag-Usage and @ref Tags-Overview.
+ Output only the 'borrowed' content format for the relevant tag.
+ See @ref CBORTags, @ref Tag-Usage and @ref Tags-Overview.
  */
 #define QCBOR_ENCODE_AS_BORROWED 1
 
@@ -652,7 +653,6 @@
 static void QCBOREncode_AddFloatNoPreferredToMapN(QCBOREncodeContext *pCtx, int64_t nLabel, float fNum);
 
 
-
 /**
  @brief Add an optional tag.
 
@@ -756,7 +756,6 @@
 static void QCBOREncode_AddBytesToMapN(QCBOREncodeContext *pCtx, int64_t nLabel, UsefulBufC Bytes);
 
 
-
 /**
  @brief Add a binary UUID to the encoded output.
 
@@ -1549,7 +1548,6 @@
 static void QCBOREncode_OpenMapInMapN(QCBOREncodeContext *pCtx, int64_t nLabel);
 
 
-
 /**
  @brief Close an open map.
 
@@ -1767,7 +1765,8 @@
 */
 static int QCBOREncode_IsBufferNULL(QCBOREncodeContext *pCtx);
 
- /**
+
+/**
  @brief Get the encoding error state.
 
  @param[in] pCtx  The encoding context.
