CINXE.COM
Use of uninitialized value
<!DOCTYPE html> <html lang="en-us"> <head> <meta charset="utf-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes"> <link rel="canonical" href="https://perlmaven.com/use-of-uninitialized-value" /> <link rel="prev" href="/variable-declaration-in-perl"> <link rel="next" href="/barewords-in-perl"> <link href="/atom" rel="alternate" type="application/atom+xml" title ="Perl Maven" /> <script> var user_info = ; </script> <!-- Google recommended indication of translated versions --> <link rel="alternate" hreflang="x-default" href="https://perlmaven.com/use-of-uninitialized-value" /> <link rel="alternate" hreflang="pt" href="https://br.perlmaven.com/uso-de-valor-nao-inicializado" /> <link rel="alternate" hreflang="en" href="https://perlmaven.com/use-of-uninitialized-value" /> <link rel="alternate" hreflang="de" href="https://de.perlmaven.com/use-of-uninitialized-value" /> <link rel="alternate" hreflang="ro" href="https://ro.perlmaven.com/folosirea-unei-valori-neinitializate" /> <link rel="alternate" hreflang="zh-Hans" href="https://cn.perlmaven.com/use-of-uninitialized-value" /> <link rel="alternate" hreflang="id" href="https://id.perlmaven.com/penggunaan-nilai-tak-terinisiasi" /> <link rel="alternate" hreflang="ko" href="https://ko.perlmaven.com/use-of-uninitialized-value" /> <link rel="alternate" hreflang="ru" href="https://ru.perlmaven.com/use-of-uninitialized-value" /> <link rel="alternate" hreflang="it" href="https://it.perlmaven.com/use-of-uninitialized-value" /> <title>Use of uninitialized value</title> <meta name="description" content=""> <meta name="author" content="szabgab"> <!-- The Open Graph protocol --> <meta property="og:title" content="Use of uninitialized value"/> <meta property="og:type" content="article"/> <meta property="og:image" content="/img/perl_maven_150x212.png"/> <meta property="og:site_name" content="Perl Maven"/> <meta property="og:description" content=""/> <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"> <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css" rel="stylesheet"> <link href="/css/style.css?20210507.1" rel="stylesheet"> <link href="/static/css/site.css?20210507.1" rel="stylesheet"> <script src="https://cdn.rawgit.com/google/code-prettify/master/loader/run_prettify.js"></script> <script src="https://code.jquery.com/jquery-3.3.1.min.js"></script> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script> <script src="/javascripts/perlmaven.js?20210507.1"></script> <script src="/js/maven.js"></script> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:site" content="@szabgab" /> <meta name="twitter:creator" content="@szabgab" /> <meta name="twitter:title" content="Use of uninitialized value" /> <meta name="twitter:description" content="" /> <meta name="twitter:image" content="/img/perl_maven_150x212.png" /> </head> <body> <div class="container-fluid"> <div class="row"> <div class="col-md-12"> <nav class="navbar navbar-default navbar-fixed-top navbar-inverse"> <div class="container-fluid"> <div class="navbar-header"> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="/">Perl Maven</a> </div> <div class="collapse navbar-collapse" id="navbar"> <ul class="nav navbar-nav "> <li><a href="/perl-tutorial">Perl Tutorial</a></li> <!-- --> <li><a href="/books">Books</a></li> <!-- --> </ul> <ul class="nav navbar-nav navbar-right "> <li><a href="/keywords">Type keyword:</a></li> <!-- --> <!-- --> <li><form id="search_form"> <input id="search_box" type="text" data-provide="typeahead" data-items="4" aria-label="Enter your search term"> </form> </li> <li><a href="/archive">Archive</a></li> <!-- --> <li><a href="/about">About</a></li> <!-- --> <!-- --> <li><a href="/atom" rel="alternate" type="application/atom+xml"><img src="/img/feed-icon16x16.png" id="atom-icon" alt="Atom feed" /></a></li> </ul> </div> </div> </nav> </div> </div> <div class="row"> <div class="col-md-2" id="left-column"> <div class="category_img"> <a href="https://perlmaven.com/perl-tutorial"><img src="/img/beginner_perl_maven_150x212.png" alt="Beginner Perl Maven tutorial" title="Beginner Perl Maven tutorial" /></a> </div> <div id="series"> <a href="/perl-tutorial">Perl tutorial</a> <hr> <ol> <li>Introduction <ol> <li> <a href="/installing-perl-and-getting-started">Installing and getting started with Perl</a> </li> <li> <a href="/hashbang">The Hash-bang line, or how to make a Perl scripts executable on Linux</a> </li> <li> <a href="/perl-editor">Perl Editor</a> </li> <li> <a href="/help">How to get Help for Perl?</a> </li> <li> <a href="/perl-on-the-command-line">Perl on the command line</a> </li> <li> <a href="/core-perl-documentation-cpan-module-documentation">Core Perl documentation and CPAN module documentation</a> </li> <li> <a href="/pod-plain-old-documentation-of-perl">POD - Plain Old Documentation</a> </li> <li> <a href="/debugging-perl-scripts">Debugging Perl scripts</a> </li> </ol> </li> <li>Scalars <ol> <li> <a href="/common-warnings-and-error-messages">Common Warnings and Error messages in Perl</a> </li> <li> <a href="/read-from-stdin">Prompt, read from STDIN, read from the keyboard in Perl</a> </li> <li> <a href="/automatic-value-conversion-or-casting-in-perl">Automatic string to number conversion or casting in Perl</a> </li> <li> <a href="/if">Conditional statements, using if, else, elsif in Perl</a> </li> <li> <a href="/boolean-values-in-perl">Boolean values in Perl</a> </li> <li> <a href="/numerical-operators">Numerical operators</a> </li> <li> <a href="/string-operators">String operators: concatenation (.), repetition (x)</a> </li> <li> <a href="/undef-and-defined-in-perl">undef, the initial value and the defined function of Perl</a> </li> <li> <a href="/quoted-interpolated-and-escaped-strings-in-perl">Strings in Perl: quoted, interpolated and escaped</a> </li> <li> <a href="/here-documents">Here documents, or how to create multi-line strings in Perl</a> </li> <li> <a href="/scalar-variables">Scalar variables</a> </li> <li> <a href="/comparing-scalars-in-perl">Comparing scalars in Perl</a> </li> <li> <a href="/string-functions-length-lc-uc-index-substr">String functions: length, lc, uc, index, substr</a> </li> <li> <a href="/number-guessing-game">Number Guessing game</a> </li> <li> <a href="/while-loop">while loop</a> </li> <li> <a href="/scope-of-variables-in-perl">Scope of variables in Perl</a> </li> <li> <a href="/short-circuit">Short-circuit in boolean expressions</a> </li> </ol> </li> <li>Files <ol> <li> <a href="/how-to-exit-from-perl-script">How to exit from a Perl script?</a> </li> <li> <a href="/stdout-stderr-and-redirection">Standard output, standard error and command line redirection</a> </li> <li> <a href="/warn">Warning when something goes wrong</a> </li> <li> <a href="/die">What does die do?</a> </li> <li> <a href="/writing-to-files-with-perl">Writing to files with Perl</a> </li> <li> <a href="/appending-to-files">Appending to files</a> </li> <li> <a href="/open-and-read-from-files">Open and read from text files</a> </li> <li> <a href="/open-files-in-the-old-way">Don't Open Files in the old way</a> </li> <li> <a href="/reading-and-writing-binary-files">Reading and writing binary files in Perl</a> </li> <li> <a href="/end-of-file-in-perl">EOF - End of file in Perl</a> </li> <li> <a href="/tell">tell how far have we read a file</a> </li> <li> <a href="/seek">seek - move the position in the filehandle in Perl</a> </li> <li> <a href="/slurp">slurp mode - reading a file in one step</a> </li> </ol> </li> <li>Lists and Arrays <ol> <li> <a href="/for-loop-in-perl">Perl for loop explained with examples</a> </li> <li> <a href="/perl-arrays">Perl Arrays</a> </li> <li> <a href="/argv-in-perl">Processing command line arguments - @ARGV in Perl</a> </li> <li> <a href="/how-to-process-command-line-arguments-in-perl">How to process command line arguments in Perl using Getopt::Long</a> </li> <li> <a href="/advanced-usage-of-getopt-long-accepting-command-line-arguments">Advanced usage of Getopt::Long for accepting command line arguments</a> </li> <li> <a href="/perl-split">Perl split - to cut up a string into pieces</a> </li> <li> <a href="/how-to-read-a-csv-file-using-perl">How to read a CSV file using Perl?</a> </li> <li> <a href="/join">join</a> </li> <li> <a href="/the-year-19100">The year of 19100</a> </li> <li> <a href="/scalar-and-list-context-in-perl">Scalar and List context in Perl, the size of an array</a> </li> <li> <a href="/reading-from-a-file-in-scalar-and-list-context">Reading from a file in scalar and list context</a> </li> <li> <a href="/stdin-in-scalar-and-list-context">STDIN in scalar and list context</a> </li> <li> <a href="/sorting-arrays-in-perl">Sorting arrays in Perl</a> </li> <li> <a href="/sorting-mixed-strings">Sorting mixed strings</a> </li> <li> <a href="/unique-values-in-an-array-in-perl">Unique values in an array in Perl</a> </li> <li> <a href="/manipulating-perl-arrays">Manipulating Perl arrays: shift, unshift, push, pop</a> </li> <li> <a href="/reverse-polish-calculator-in-perl">Reverse Polish Calculator in Perl using a stack</a> </li> <li> <a href="/using-a-queue-in-perl">Using a queue in Perl</a> </li> <li> <a href="/reverse">Reverse an array, a string or a number</a> </li> <li> <a href="/the-ternary-operator-in-perl">The ternary operator in Perl</a> </li> <li> <a href="/loop-controls-next-last">Loop controls: next, last, continue, break</a> </li> <li> <a href="/min-max-sum-using-list-util">min, max, sum in Perl using List::Util</a> </li> <li> <a href="/qw-quote-word">qw - quote word</a> </li> </ol> </li> <li>Subroutines <ol> <li> <a href="/subroutines-and-functions-in-perl">Subroutines and functions in Perl</a> </li> <li> <a href="/passing-multiple-parameters-to-a-function">Passing multiple parameters to a function in Perl</a> </li> <li> <a href="/variable-number-of-parameters">Variable number of parameters in Perl subroutines</a> </li> <li> <a href="/returning-a-list-from-a-subroutine">Returning multiple values or a list from a subroutine in Perl</a> </li> <li> <a href="/recursive-subroutines">Understanding recursive subroutines - traversing a directory tree</a> </li> </ol> </li> <li>Hashes <ol> <li> <a href="/perl-hashes">Hashes in Perl</a> </li> <li> <a href="/creating-hash-from-an-array">Creating a hash from an array in Perl</a> </li> <li> <a href="/perl-hash-in-scalar-and-list-context">Perl hash in scalar and list context</a> </li> <li> <a href="/exists">exists - check if a key exists in a hash</a> </li> <li> <a href="/delete">delete an element from a hash</a> </li> <li> <a href="/how-to-sort-a-hash-in-perl">How to sort a hash in Perl?</a> </li> <li> <a href="/count-words-in-text-using-perl">Count the frequency of words in text using Perl</a> </li> </ol> </li> <li>Regular Expressions <ol> <li> <a href="/introduction-to-regexes-in-perl">Introduction to Regexes in Perl 5</a> </li> <li> <a href="/regex-character-classes">Regex character classes</a> </li> <li> <a href="/regex-special-character-classes">Regex: special character classes</a> </li> <li> <a href="/regex-quantifiers">Perl 5 Regex Quantifiers</a> </li> <li> <a href="/trim">trim - removing leading and trailing white spaces with Perl</a> </li> <li> <a href="/regex-cheat-sheet">Perl 5 Regex Cheat sheet</a> </li> </ol> </li> <li>Shell related functionality <ol> <li> <a href="/file-test-operators">What are -e, -z, -s, -M, -A, -C, -r, -w, -x, -o, -f, -d , -l in Perl?</a> </li> <li> <a href="/current-working-directory">Current working directory in Perl (cwd, pwd)</a> </li> <li> <a href="/running-external-programs-from-perl">Running external programs from Perl with system</a> </li> <li> <a href="/qx">qx or backticks - running external command and capturing the output</a> </li> <li> <a href="/how-to-remove-copy-or-rename-a-file-with-perl">How to remove, copy or rename a file with Perl</a> </li> <li> <a href="/reading-the-content-of-a-directory">Reading the content of a directory</a> </li> <li> <a href="/traversing-the-filesystem-using-a-queue">Traversing the filesystem - using a queue</a> </li> </ol> </li> <li>CPAN <ol> <li> <a href="/download-and-install-perl">Download and install Perl</a> </li> <li> <a href="/how-to-install-a-perl-module-from-cpan">Installing a Perl Module from CPAN on Windows, Linux and Mac OSX</a> </li> <li> <a href="/how-to-change-inc-to-find-perl-modules-in-non-standard-locations">How to change @INC to find Perl modules in non-standard locations</a> </li> <li> <a href="/how-to-add-a-relative-directory-to-inc">How to add a relative directory to @INC</a> </li> </ol> </li> <li>Examples for using Perl <ol> <li> <a href="/how-to-replace-a-string-in-a-file-with-perl">How to replace a string in a file with Perl</a> </li> <li> <a href="/read-an-excel-file-in-perl">How to read an Excel file in Perl</a> </li> <li> <a href="/create-an-excel-file-with-perl">How to create an Excel file with Perl?</a> </li> <li> <a href="/sending-html-email-using-email-stuffer">Sending HTML e-mail using Email::Stuffer</a> </li> <li> <a href="/perl-cgi-script-with-apache2">Perl/CGI script with Apache2</a> </li> <li> <a href="/json">JSON in Perl</a> </li> <li> <a href="/simple-database-access-using-perl-dbi-and-sql">Simple Database access using Perl DBI and SQL</a> </li> <li> <a href="/reading-from-ldap-in-perl-using-net-ldap">Reading from LDAP in Perl using Net::LDAP</a> </li> </ol> </li> <li>Common warnings and error messages <ol> <li> <a href="/global-symbol-requires-explicit-package-name">Global symbol requires explicit package name</a> </li> <li> <a href="/variable-declaration-in-perl">Variable declaration in Perl</a> </li> <li> <a class="current" href="/use-of-uninitialized-value">Use of uninitialized value</a> <span class="glyphicon glyphicon-ok"></span> </li> <li> <a href="/barewords-in-perl">Barewords in Perl</a> </li> <li> <a href="/name-used-only-once-possible-typo">Name "main::x" used only once: possible typo at ...</a> </li> <li> <a href="/unknown-warnings-category">Unknown warnings category</a> </li> <li> <a href="/cant-use-string-as-a-hash-ref-while-strict-refs-in-use">Can't use string (...) as an HASH ref while "strict refs" in use at ...</a> </li> <li> <a href="/symbolic-reference-in-perl">Symbolic references in Perl</a> </li> <li> <a href="/cant-locate-in-inc">Can't locate ... in @INC</a> </li> <li> <a href="/scalar-found-where-operator-expected">Scalar found where operator expected</a> </li> <li> <a href="/my-variable-masks-earlier-declaration-in-same-scope">"my" variable masks earlier declaration in same scope</a> </li> <li> <a href="/cant-call-method-on-unblessed-reference">Can't call method ... on unblessed reference</a> </li> <li> <a href="/argument-isnt-numeric-in-numeric">Argument ... isn't numeric in numeric ...</a> </li> <li> <a href="/cant-locate-object-method-via-package-1">Can't locate object method "..." via package "1" (perhaps you forgot to load "1"?)</a> </li> <li> <a href="/useless-use-of-hash-element-in-void-context">Useless use of hash element in void context</a> </li> <li> <a href="/useless-use-of-private-variable-in-void-context">Useless use of private variable in void context</a> </li> <li> <a href="/readline-on-closed-filehandle">readline() on closed filehandle in Perl</a> </li> <li> <a href="/possible-precedence-issue-with-control-flow-operator">Possible precedence issue with control flow operator</a> </li> <li> <a href="/scalar-value-better-written-as">Scalar value ... better written as ...</a> </li> <li> <a href="/substr-outside-of-string">substr outside of string at ...</a> </li> <li> <a href="/have-exceeded-the-maximum-number-of-attempts">Have exceeded the maximum number of attempts (1000) to open temp file/dir</a> </li> <li> <a href="/use-of-implicit-split-to-is-deprecated">Use of implicit split to @_ is deprecated ...</a> </li> </ol> </li> <li>Other <ol> <li> <a href="/multi-dimensional-arrays-in-perl">Multi dimensional arrays in Perl</a> </li> <li> <a href="/multi-dimensional-hashes">Multi dimensional hashes in Perl</a> </li> <li> <a href="/minimal-requirement-to-build-a-sane-cpan-package">Minimal requirement to build a sane CPAN package</a> </li> <li> <a href="/statement-modifiers">Statement modifiers: reversed if statements</a> </li> <li> <a href="/autovivification">What is autovivification?</a> </li> <li> <a href="/printf">Formatted printing in Perl using printf and sprintf</a> </li> </ol> </li> </ol> </div> </div> <div class="col-md-7" id="content"> <div id="show_content"> <h1>Use of uninitialized value</h1> <div id="indexes"> <ul> <li><a class="btn btn-mini btn-primary kw-button" href="/search/undef">undef</a></li> <li><a class="btn btn-mini btn-primary kw-button" href="/search/uninitialized value">uninitialized value</a></li> <li><a class="btn btn-mini btn-primary kw-button" href="/search/$|">$|</a></li> <li><a class="btn btn-mini btn-primary kw-button" href="/search/warnings">warnings</a></li> <li><a class="btn btn-mini btn-primary kw-button" href="/search/buffering">buffering</a></li> </ul> </div> <div class="prev-next"> <h2> <span class="label label-lg label-success prev"> <a href="/variable-declaration-in-perl" title="Variable declaration in Perl"><span class="glyphicon glyphicon-chevron-left"></span> Prev</a> </span> <span class="label label-lg label-success next"> <a href="/barewords-in-perl" title="Barewords in Perl">Next <span class="glyphicon glyphicon-chevron-right"></span> </a> </span> </h2> </div> <div role="main" id="main"> <div id="top-poster"></div> <div id="abstract"> <div id="abstract_text"> <p> This is one of the most common warning you will encounter while running Perl code. <p> It is a warning, it won't stop your script from running and it is only generated if warnings were turned on. Which is recommended. <p> The most common way to turn on warnings is by including a <span class="inline_code">use warnings;</span> statement at the beginning of your script or module. <p> </div> </div> <div id="after-abstract"></div> <p> The older way is adding a <span class="inline_code">-w</span> flag on the sh-bang line. Usually looks like this as the first line of your script: <p> <span class="inline_code">#!/usr/bin/perl -w</span> <p> There are certain differences, but as <span class="inline_code">use warnings</span> is available for 12 years now, there is no reason to avoid it. In other words: <p> Always <span class="inline_code">use warnings;</span>! <p> <p> Let's go back to the actual warning I wanted to explain. <p> <h2>A quick explanation</h2> <p> <pre class="linenums"> Use of uninitialized value $x in say at perl_warning_1.pl line 6. </pre> <p> This means the variable <span class="inline_code">$x</span> has no value (its value is the special value <span class="inline_code">undef</span>). Either it never got a value, or at some point <span class="inline_code">undef</span> was assigned to it. <p> You should look for the places where the variable got the last assignment, or you should try to understand why that piece of code has never been executed. <p> <h2>A simple example</h2> <p> The following example will generate such warning. <p> <pre class="prettyprint linenums language-perl"> use warnings; use strict; use 5.010; my $x; say $x; </pre> <p> Perl is very nice, tells us which file generated the warning and on which line. <p> <h2>Only a warning</h2> <p> As I mentioned this is only a warning. If the script has more statements after that <span class="inline_code">say</span> statement, they will be executed: <p> <pre class="prettyprint linenums language-perl"> use warnings; use strict; use 5.010; my $x; say $x; $x = 42; say $x; </pre> <p> This will print <p> <pre class="linenums"> Use of uninitialized value $x in say at perl_warning_1.pl line 6. 42 </pre> <p> <h2>Confusing output order</h2> <p> Beware though, if your code has print statements before the line generating the warning, like in this example: <p> <pre class="prettyprint linenums language-perl"> use warnings; use strict; use 5.010; print 'OK'; my $x; say $x; $x = 42; say $x; </pre> <p> the result might be confusing. <p> <pre class="linenums"> Use of uninitialized value $x in say at perl_warning_1.pl line 7. OK 42 </pre> <p> Here, 'OK', the result of the <span class="inline_code">print</span> is seen <b>after</b> the warning, even though it was called <b>before</b> the code that generated the warning. <p> This strangeness is the result of <span class="inline_code">IO buffering</span>. By default Perl buffers STDOUT, the standard output channel, while it does not buffer STDERR, the standard error channel. <p> So while the word 'OK' is waiting for the buffer to be flushed, the warning message already arrives to the screen. <p> <h2>Turning off buffering</h2> <p> In order to avoid this you can turn off the buffering of STDOUT. <p> This is done by the following code: <span class="inline_code">$| = 1;</span> at the beginning of the script. <p> <p> <pre class="prettyprint linenums language-perl"> use warnings; use strict; use 5.010; $| = 1; print 'OK'; my $x; say $x; $x = 42; say $x; </pre> <p> <pre class="linenums"> OKUse of uninitialized value $x in say at perl_warning_1.pl line 7. 42 </pre> <p> (The warning is on the same line as the <b>OK</b> because we have not printed a newline <span class="inline_code">\n</span> after the OK.) <p> <h2>The unwanted scope</h2> <p> <pre class="prettyprint linenums language-perl"> use warnings; use strict; use 5.010; my $x; my $y = 1; if ($y) { my $x = 42; } say $x; </pre> <p> This code too produces <span class="inline_code">Use of uninitialized value $x in say at perl_warning_1.pl line 11.</span> <p> I have managed to make this mistake several times. Not paying attention I used <span class="inline_code">my $x</span> inside the <span class="inline_code">if</span> block, which meant I have created another $x variable, assigned 42 to it just to let it go out of the scope at the end of the block. (The $y = 1 is just a placeholder for some real code and some real condition. It is there only to make this example a bit more realistic.) <p> There are of course cases when I need to declare a variable inside an if block, but not always. When I do that by mistake it is painful to find the bug. <p> <p> <p> <h2>Comments</h2> <p> Using Padre to code Perl, when I try to execute, in this statement $yeara = $year + 1900; I got this error: Global symbol "$yeara" requires explicit package name at .... Please, tell me where may I get the info about that in order to fix it, (other error messages too) thanks in advance <p> <p> https://perlmaven.com/common-warnings-and-error-messages <p> <p> <hr> <p> When I am calling perl script thorugh jenkins Execute shell I am getting error"Use of uninitialized value in string eq " but from the same jenkins server(linux backen) when I am running that perl it runs fine . <p> Is there anything else in that warning you get? Such as name of the variable or the line of code that generated this warning? What is the version of perl on that server? <p> <p> <div id="after-content"></div> </div> <div class="prev-next"> <h2> <span class="label label-lg label-success prev"> <a href="/variable-declaration-in-perl" title="Variable declaration in Perl"><span class="glyphicon glyphicon-chevron-left"></span> Prev</a> </span> <span class="label label-lg label-success next"> <a href="/barewords-in-perl" title="Barewords in Perl">Next <span class="glyphicon glyphicon-chevron-right"></span> </a> </span> </h2> </div> <hr> <div id="creators"> <img src="/img/szabgab.png" alt="Gabor Szabo" /> <!-- Gabor who runs the Perl Maven site helps companies set up <b>test automation</b>, CI/CD <b>Continuous Integration</b> and <b>Continuous Deployment</b> and other <b>DevOps</b> related systems. <p> Gabor can help refactor your old Perl code-base. <p> He runs the <a href="http://perlweekly.com/">Perl Weekly</a> newsletter. <p> <a href="https://szabgab.com/contact.html">Contact Gabor</a> if you'd like to hire his service. <p> Buy his <a href="https://leanpub.com/u/szabgab">eBooks</a> or if you just would like to support him, do it via <a href="https://www.patreon.com/szabgab">Patreon</a>. --> <div class="author_text"> Written by<br> <a href="https://www.linkedin.com/in/szabgab/">Gabor Szabo</a> </div> </div> <hr> <p> Published on 2012-09-05 </p> <div> If you have any comments or questions, feel free to post them on the source of this page in GitHub. <a href="https://github.com/szabgab/perlmaven.com/tree/main/sites/en/pages//use-of-uninitialized-value.txt">Source on GitHub.</a> <a href="https://github.com/szabgab/perlmaven.com/issues/new?title=&body=https://perlmaven.com/use-of-uninitialized-value">Comment on this post</a> </div> </div> </div> <div class="col-md-3"> <div id="right-side"> <div class="author-rightbox"> <h3>Author: Gabor Szabo</h3> <img src="/img/szabgab.png" alt="" /> Gabor who runs the Perl Maven site helps companies set up <b>test automation</b>, CI/CD <b>Continuous Integration</b> and <b>Continuous Deployment</b> and other <b>DevOps</b> related systems. <p> Gabor can help refactor your old Perl code-base. <p> He runs the <a href="http://perlweekly.com/">Perl Weekly</a> newsletter. <p> <a href="https://szabgab.com/contact.html">Contact Gabor</a> if you'd like to hire his service. <p> Buy his <a href="https://leanpub.com/u/szabgab">eBooks</a> or if you just would like to support him, do it via <a href="https://www.patreon.com/szabgab">Patreon</a>. </div> <div class="rightbox"> </div> <div class="rightbox"> <div id="sites"> <ul> <li> <a href="https://id.perlmaven.com/penggunaan-nilai-tak-terinisiasi">Bahasa Indonesia</a> </li> <li> <a href="https://de.perlmaven.com/use-of-uninitialized-value">Deutsch</a> </li> <li> <a href="https://perlmaven.com/use-of-uninitialized-value">English</a> <span class="glyphicon glyphicon-ok"></span> </li> <li> <a href="https://it.perlmaven.com/use-of-uninitialized-value">Italiano</a> </li> <li> <a href="https://br.perlmaven.com/uso-de-valor-nao-inicializado">Português</a> </li> <li> <a href="https://ro.perlmaven.com/folosirea-unei-valori-neinitializate">Română</a> </li> <li> <a href="https://ru.perlmaven.com/use-of-uninitialized-value">Русский</a> </li> <li> <a href="https://cn.perlmaven.com/use-of-uninitialized-value">简体中文</a> </li> <li> <a href="https://ko.perlmaven.com/use-of-uninitialized-value">한국어</a> </li> <li><hr></li> <li><a href="https://perlmaven.com/about#translations">about the translations</a></li> </ul> </div> </div> <div class="rightbox"> </div> </div> </div><!-- end of right column --> </div> </div> <div id="modal"></div> <!-- Global site tag (gtag.js) - Google Analytics --> <script async src="https://www.googletagmanager.com/gtag/js?id=G-BLRW8KB16K"></script> <script> window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'G-BLRW8KB16K'); </script> </body> </html>