How can I prevent Drupal from stripping/sanitizing anchor tag In a custom moudule I find email addresses  and return them as clickable mailto anchors on the page. 

    $tableEntry['Email'] = l($emailAddress ,'mailto:'.$emailAddress , array('html' =&gt; TRUE)); 

    //Snippet of render array being used to create the table.. In a different function from the line above
    $rows = array();
    foreach ($tableEntries as $entry) {
    $rows[] = array(
        array('data' =&gt; $entry['Email']), //l($entry['Email'], 'mailto:'.$entry['Email'], array('absolute' =&gt; TRUE))),
    );


If i create the anchors before passing them into the table's render array, Drupal does something to strip away the html. 
I have tried a whole bunch of argument options in l() and have also tried directly entering in HTML into l(), all the time the results get stripped. (I always check the generated email address to be sure it was first created successfully) . 
The only way i am able to get an anchor to display as a link within the browser, instead of plain text, is to call the l() function at the last step of building the table render array eg. the commented out code. Any explanations are much appreciated.
Just for sanity's sake...from a 'Drupal' point of view, your code works fine. For example (without the loop), 

$emailAddress = 'test@test.com';
$entry['Email'] = l($emailAddress ,'mailto:'.$emailAddress , array('html' =&gt; TRUE)); 

//Snippet of render array being used to create the table 
$rows = array();
$rows[] = array(
    array('data' =&gt; $entry['Email']),
);

print theme('table', array('rows' =&gt; $rows));


Produces:

&lt;table&gt;
  &lt;tbody&gt;
    &lt;tr class="odd"&gt;
      &lt;td&gt;&lt;a href="mailto:test@test.com"&gt;test@test.com&lt;/a&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;


You may have a custom implementation of theme_table() somewhere which sanitises the incoming cell data, but it's not being caused by Drupal core.

Or, it might simply be that you're trying to re-use $entry when it doesn't make sense to.

$entry['Email'] = l($emailAddress ,'mailto:'.$emailAddress , array('html' =&gt; TRUE)); 

...

foreach ($tableEntries as $entry) {


Are you sure you meant to overwrite the outer $entry array with the one in the foreach?