diff --git a/src/OpenFOAM/db/dynamicLibrary/dynamicCode/dynamicCodeContext.C b/src/OpenFOAM/db/dynamicLibrary/dynamicCode/dynamicCodeContext.C
index 36e8407afb0f4db9f917ca06b9aca555c7d109cf..089948e6f04305f20771b7bceb74ea310383b287 100644
--- a/src/OpenFOAM/db/dynamicLibrary/dynamicCode/dynamicCodeContext.C
+++ b/src/OpenFOAM/db/dynamicLibrary/dynamicCode/dynamicCodeContext.C
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           |
+    \\  /    A nd           | Copyright (C) 2019 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
                             | Copyright (C) 2011-2016 OpenFOAM Foundation
@@ -124,11 +124,16 @@ Foam::dynamicCodeContext::dynamicCodeContext(const dictionary& dict)
 void Foam::dynamicCodeContext::addLineDirective
 (
     string& code,
-    const label lineNum,
+    label lineNum,
     const fileName& name
 )
 {
-    code = "#line " + Foam::name(lineNum + 1) + " \"" + name + "\"\n" + code;
+    ++lineNum;  // Change from 0-based to 1-based
+
+    if (lineNum > 0 && !name.empty())
+    {
+        code = "#line " + Foam::name(lineNum) + " \"" + name + "\"\n" + code;
+    }
 }
 
 
diff --git a/src/OpenFOAM/db/dynamicLibrary/dynamicCode/dynamicCodeContext.H b/src/OpenFOAM/db/dynamicLibrary/dynamicCode/dynamicCodeContext.H
index 60acd3bb5a802cf32d53593d8f31d948d7839fab..38d4dd8006623628e355b62d0d00a8dd63bae599 100644
--- a/src/OpenFOAM/db/dynamicLibrary/dynamicCode/dynamicCodeContext.H
+++ b/src/OpenFOAM/db/dynamicLibrary/dynamicCode/dynamicCodeContext.H
@@ -2,7 +2,7 @@
   =========                 |
   \\      /  F ield         | OpenFOAM: The Open Source CFD Toolbox
    \\    /   O peration     |
-    \\  /    A nd           |
+    \\  /    A nd           | Copyright (C) 2019 OpenCFD Ltd.
      \\/     M anipulation  |
 -------------------------------------------------------------------------------
                             | Copyright (C) 2011-2016 OpenFOAM Foundation
@@ -80,7 +80,7 @@ public:
     // Constructors
 
         //- Construct from a dictionary
-        dynamicCodeContext(const dictionary&);
+        dynamicCodeContext(const dictionary& dict);
 
 
     // Member functions
@@ -128,10 +128,11 @@ public:
         }
 
         //- Helper: add \#line directive
+        //  The lineNum is 0-based. No-op if the lineNum is negative.
         static void addLineDirective
         (
-            string&,
-            const label lineNum,
+            string& code,
+            label lineNum,
             const fileName& name
         );
 };